Здесь показаны различия между двумя версиями данной страницы.
Both sides previous revision Предыдущая версия Следущая версия | Предыдущая версия | ||
eaze:samples:добавление_фотогалереи_в_vt_к_объекту [2011/09/21 11:12] sergeyfast |
eaze:samples:добавление_фотогалереи_в_vt_к_объекту [2011/09/21 11:30] sergeyfast |
||
---|---|---|---|
Строка 378: | Строка 378: | ||
====== Итог ====== | ====== Итог ====== | ||
- | Поставленной цели мы добились. Осталось рассмотреть плюсы и минусы подхода. | + | Поставленной цели мы добились. Можно было бы конечно сделать массовый загрузчик на flash и потом и мышкой раскидать фотографии по альбомам, но для этого нужно написать ещё больше javascript'а. |
+ | |||
+ | Осталось рассмотреть плюсы и минусы подхода. | ||
===== Плюсы ===== | ===== Плюсы ===== | ||
+ | * Не нужно дополнительно обрабатывать получение связанных объектов из формы на PHP (albums, photos). | ||
+ | * Не нужно дублировать шаблон отображения album и photo сначала в PHP, потом на JS. Всего используется один шаблон. | ||
+ | * Минимальное количество кода в SaveEntityAction (в основном - только получение листов второго и последующих уровней). | ||
===== Минусы ===== | ===== Минусы ===== | ||
+ | * GetFromRequest на втором уровне получает каждый объект через GetById (соответственно сколько файлов - столько запросов при сохранении). //можно исправить, но сложновато// | ||
+ | * Если сохранить страницу при выключенном JS - то все фотографии удалятся (потому что не пришли с формы). //можно исправить через дополнительную переменную, которая выставляется через JS// | ||
+ | * При сохранении страницы для не измененных данных каждый раз выполняется UPDATE. //можно исправить путем добавления проверки на эквивалентность объектов// | ||
+ | |||
+ | //Ещё раз повторюсь, что данный пример не претендует на идеальность и универсальность. Он пытается рассказать, как работать в VT со сложными объектами. Пожелания и дополнения приветствуются. ;)// | ||
+ | |||
+ | |||