Здесь показаны различия между двумя версиями данной страницы.
| 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 со сложными объектами. Пожелания и дополнения приветствуются. ;)// | ||
| + | |||
| + | |||