У вас должна быть система обмена сообщениями, в которой сообщения могут относиться к консультации, но это не обязательно. Однако во всех консультациях есть одно или несколько сообщений...
Мои объекты были созданы Doctrine автоматически, но вендор/bin/doctrine-module orm:validate-schema завершается с ошибкой печально...
vendor/bin/doctrine-module orm:validate-schema
[Mapping] FAIL - The entity-class 'Legetimen\Entity\Konsultasjon' mapping is invalid:
* The association Legetimen\Entity\Konsultasjon#meldinger refers to the owning side field Legetimen\Entity\Meldinger#konsulatsjon which is not defined as association, but as field.
* The association Legetimen\Entity\Konsultasjon#meldinger refers to the owning side field Legetimen\Entity\Meldinger#konsulatsjon which does not exist.
[Database] FAIL - The database schema is not in sync with the current mapping file.
Определение рассматриваемых ассоциаций:
Из сообщений/Мельдингера:
/**
* @var integer
*
* @ORM\Column(name="konsulatsjon", type="integer", precision=0, scale=0, nullable=true, unique=false)
* @ORM\ManyToOne(targetEntity="Konsultasjon", inversedBy="konsultasjonid")
*/
private $konsulatsjon;
Из моей «Родительской» консультации:
/**
* @var \Doctrine\Common\Collections\Collection
*
* @ORM\OneToMany(targetEntity="Legetimen\Entity\Meldinger", mappedBy="konsulatsjon", cascade={"persist"}, fetch="EAGER")
*/
private $meldinger;
Моя консультация сопоставлена с внешним триггером, но не мои сообщения (потому что многие консультации имеют значение NULL).
Кроме того, меня очень мало Можно поделать с орфографией, так как это устаревшее и довольно запутанное приложение...
Пожалуйста, дайте мне знать, если вам понадобится что-нибудь еще, и буду очень признателен за любую помощь.
[EDIT]
Удалены @var и @column в сообщениях (Meldinger), как было предложено в комментариях, в результате получился следующий результат:
vendor/bin/doctrine-module orm:validate-schema
[Mapping] FAIL - The entity-class 'Legetimen\Entity\Konsultasjon' mapping is invalid:
* The mappings Legetimen\Entity\Konsultasjon#meldinger and Legetimen\Entity\Meldinger#konsulatsjon are inconsistent with each other.
[Mapping] FAIL - The entity-class 'Legetimen\Entity\Meldinger' mapping is invalid:
* The association Legetimen\Entity\Meldinger#konsulatsjon refers to the inverse side field Legetimen\Entity\Konsultasjon#konsultasjonid which is not defined as association.
* The association Legetimen\Entity\Meldinger#konsulatsjon refers to the inverse side field Legetimen\Entity\Konsultasjon#konsultasjonid which does not exist.
* The referenced column name 'id' has to be a primary key column on the target entity class 'Legetimen\Entity\Konsultasjon'.
[Doctrine\ORM\ORMException]
Column name `id` referenced for relation from Legetimen\Entity\Meldinger towards Legetimen\Entity\Konsultasjon does not exist.
orm:validate-schema
Идентификатор консультации:
/**
* @var integer
*
* @ORM\Column(name="konsultasjonid", type="integer", precision=0, scale=0, nullable=false, unique=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $konsultasjonid;
Идентификатор сообщения / Мелдингер
/**
* @var integer
*
* @ORM\Column(name="meldingerid", type="integer", precision=0, scale=0, nullable=false, unique=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $meldingerid;
Подробнее здесь: https://stackoverflow.com/questions/274 ... -manytoone
Задача Doctrine2: у меня есть OneToMany, но НЕ ManyToOne, ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1733651466
Anonymous
У вас должна быть система обмена сообщениями, в которой сообщения могут относиться к консультации, но это не обязательно. Однако во всех консультациях есть одно или несколько сообщений...
Мои объекты были созданы Doctrine автоматически, но вендор/bin/doctrine-module orm:validate-schema завершается с ошибкой печально...
vendor/bin/doctrine-module orm:validate-schema
[Mapping] FAIL - The entity-class 'Legetimen\Entity\Konsultasjon' mapping is invalid:
* The association Legetimen\Entity\Konsultasjon#meldinger refers to the owning side field Legetimen\Entity\Meldinger#konsulatsjon which is not defined as association, but as field.
* The association Legetimen\Entity\Konsultasjon#meldinger refers to the owning side field Legetimen\Entity\Meldinger#konsulatsjon which does not exist.
[Database] FAIL - The database schema is not in sync with the current mapping file.
Определение рассматриваемых ассоциаций:
Из сообщений/Мельдингера:
/**
* @var integer
*
* @ORM\Column(name="konsulatsjon", type="integer", precision=0, scale=0, nullable=true, unique=false)
* @ORM\ManyToOne(targetEntity="Konsultasjon", inversedBy="konsultasjonid")
*/
private $konsulatsjon;
Из моей «Родительской» консультации:
/**
* @var \Doctrine\Common\Collections\Collection
*
* @ORM\OneToMany(targetEntity="Legetimen\Entity\Meldinger", mappedBy="konsulatsjon", cascade={"persist"}, fetch="EAGER")
*/
private $meldinger;
Моя консультация сопоставлена с внешним триггером, но не мои сообщения (потому что многие консультации имеют значение NULL).
Кроме того, меня очень мало Можно поделать с орфографией, так как это устаревшее и довольно запутанное приложение...
Пожалуйста, дайте мне знать, если вам понадобится что-нибудь еще, и буду очень признателен за любую помощь.
[EDIT]
Удалены @var и @column в сообщениях (Meldinger), как было предложено в комментариях, в результате получился следующий результат:
vendor/bin/doctrine-module orm:validate-schema
[Mapping] FAIL - The entity-class 'Legetimen\Entity\Konsultasjon' mapping is invalid:
* The mappings Legetimen\Entity\Konsultasjon#meldinger and Legetimen\Entity\Meldinger#konsulatsjon are inconsistent with each other.
[Mapping] FAIL - The entity-class 'Legetimen\Entity\Meldinger' mapping is invalid:
* The association Legetimen\Entity\Meldinger#konsulatsjon refers to the inverse side field Legetimen\Entity\Konsultasjon#konsultasjonid which is not defined as association.
* The association Legetimen\Entity\Meldinger#konsulatsjon refers to the inverse side field Legetimen\Entity\Konsultasjon#konsultasjonid which does not exist.
* The referenced column name 'id' has to be a primary key column on the target entity class 'Legetimen\Entity\Konsultasjon'.
[Doctrine\ORM\ORMException]
Column name `id` referenced for relation from Legetimen\Entity\Meldinger towards Legetimen\Entity\Konsultasjon does not exist.
orm:validate-schema
Идентификатор консультации:
/**
* @var integer
*
* @ORM\Column(name="konsultasjonid", type="integer", precision=0, scale=0, nullable=false, unique=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $konsultasjonid;
Идентификатор сообщения / Мелдингер
/**
* @var integer
*
* @ORM\Column(name="meldingerid", type="integer", precision=0, scale=0, nullable=false, unique=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $meldingerid;
Подробнее здесь: [url]https://stackoverflow.com/questions/27444889/doctrine2-challenge-i-have-onetomany-but-not-manytoone[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия