ФОРМЫ Symfony: различие между {'model' => $ this-> getRelatedModelName ('model')} и {'model' => 'model'} в setWidgets - PullRequest
0 голосов
/ 13 февраля 2012

Я выполняю задание SYMFONY jobeet (день 10), и однажды в разделе FORMS я обнаружил, что иногда мы используем:

'category_id'  => new sfWidgetFormDoctrineChoice(array('model' => $this->getRelatedModelName('JobeetCategory'), 'add_empty' => false)),

и иногда мы используем просто

'jobeet_affiliates_list' => new sfWidgetFormDoctrineChoice(array('multiple' => true, 'model' => 'JobeetAffiliate')),

Кто-нибудь может мне объяснить, ПОЧЕМУ? и КАК это работает? почему иногда мы используем getRelatedModelName ?? и почему иногда 'model' => 'myModel' ???

1 Ответ

1 голос
/ 13 февраля 2012

Практически то же самое, но вы можете использовать getRelatedModelName, только когда есть связь между моделью текущей формы и моделью, которая вам нужна в вашем виджете. Например, если есть отношение, определенное между Article и Category, вы можете использовать getRelatedModelName('Category') в ArticleForm (обычно это отношение определено).

В обоих случаях (когда отношение существует / не существует), вы можете просто написать модель в виде строки 'model' => 'JobeetAffiliate'. Я обычно так делаю.

...