понедельник, 24 мая 2010 г.

Грабли: каскадное удаление в refClass'e

Чтобы избежать mysql-ошибок CONSTRAINTS при удалении/обновлении записей, которые связаны с другими связями многие-ко-многим, не забывайте прописывать каскадное удаление в ref-классах:
  relations:
    AAA:
      onDelete: CASCADE
    BBB:
      onDelete: CASCADE

суббота, 22 мая 2010 г.

Грабли: очередность загрузки фикстур

Если в папке с фикстурами лежат несколько файлов, то они обрабатываются все сразу, а по очереди. Это надо учитывать, когда создаются связи между записями в разных файлах!
Легко натолкнуться на ситуацию, когда связь не будет создана только потому, что объекта, с которым она связывает, еще нет в БД, и он неизвестен Доктрине: она до него еще просто не дошла.

Стоит отметить, что в пределах одного файла такой проблемы нет.

среда, 12 мая 2010 г.

Как взять значение фильтра из URL?

Есть сгенерированная админка. Список. Справа форма фильтрации. Как взять значение для фильтрации списка (и формы, соответственно) из URL? Очень просто.

Symfony: храним i18n-фразы в mysql

Как сделать так, чтобы фразы выводящиеся в шаблонах, можно было редактировать через админку? Для этого нужно сделать несколько простых, но совершенно неочевидных шагов (по большей части решения были найдены методом научного тыка и копания исходников).

суббота, 8 мая 2010 г.

Грабля: значения фильтров по умолчанию

Задача: в сгенерированной админке установить значения по умолчанию в форме фильтрации, а также использовать эти значения при фильтрации списка, когда фильтр еще не запущен.