#symfony1
#symfony1
Вопрос:
как у вас дела, ребята?
Я хочу отсортировать (в порядке возрастания или убывания) поля формы через генератор.yml в symfony. Я имею в виду, что у меня есть 2 таблицы событий и членов. Соотношение между этими двумя таблицами много ко многим. Я хочу, чтобы при добавлении / редактировании события список участников был отсортирован по их именам.
Я пытался использовать:
config:
actions: ~
fields:
title: { help: Title of the event ,label: Event Name *}
event_datetime: { help: Set the date and time of event ,label: Date time *}
details: { help: Details related to event ,label: Details *}
venue_id: { help: Select venue }
is_visible: { help: Select is visible or not}
members_list: { help: List of members }
slug: { help: User Friendly URL,label: User Friendly URL }
sort: [mmebers_list, asc]
Но это не работает успешно.
пожалуйста, есть предложения?
Спасибо
Ответ №1:
Попробуйте добавить это в свой schema.yml
Member:
actAs:
Timestampable:
Sluggable:
unique: true
fields: [name]
canUpdate: true
options:
orderBy: name ASC
Это приведет к глобальной сортировке всех списков участников в вашем приложении
Ответ №2:
У меня была похожая проблема, но я использую плагин sfGuardUser и не хочу менять их схему. Мне пришлось изменить файлы действий и добавить:
public function executeNew(sfWebRequest $request)
{
parent::executeNew($request);
$sql = Doctrine_Query::create()->from('sfGuardUser u')->innerJoin("u.Profile p")->where('u.is_super_admin = ?',false)->orderBy('p.lastname');
$this->form->getWidget('user_id')->setOption('query',$sql);
}
Вам нужно передать запрос, который symfony использует для получения данных в поле.