2010-08-13 2 views
0

При настройке моего генератора admin я создал table_method для просмотра списка, чтобы присоединиться к правильным таблицам и так далее.Генератор генераторов symfony table_method

Однако в моих сообщениях редактирования/создания сообщений у меня довольно обширное выпадающее меню, которое в настоящий момент не объединено. Есть ли эквивалент table_method, который я могу использовать для этих ситуаций, чтобы указать метод, который должен использоваться для извлечения записи?

Заранее спасибо.

ответ

1

Необходимо изменить соответствующий виджет в классах форм. (SomeModelForm.class.php в lib/form/doctrine).

Все виджеты Doctrine принимают параметр «запрос», чтобы разрешить вам передавать запрос Doctrine для чрезмерного опроса запроса по умолчанию, созданного формой, или опции «table_method», которая может возвращать запрос или коллекцию доктрины превысить значение по умолчанию.

В качестве эталона, см: http://www.symfony-project.org/api/1_4/sfWidgetFormDoctrineChoice

Чтобы использовать запрос, что-то вдоль линий:

$somedoctrinequery = Doctrine::getTable('ModelName')->createQuery('t')->leftJoin('t.Relation r'); 
$this->widgetSchema['field_name']->setOption('query', $somedoctrinequery); 

Или использовать table_method:

$this->widgetSchema['field_name']->setOption('table_method', 'myMethod'); 
+0

Да ладно, это решение, которое я пошел уже. Однако подумал, что может быть и другой вариант. – phidah

Смежные вопросы