Изменения

Модуль editgeneric (Sway)

86 байтов добавлено, 21:05, 20 августа 2009
Нет описания правки
: Проверка корректности ввода: например, не занят ли логин при регистрации, корректно ли введён e-mail адрес и т. п.
* Извлечение данных из базы данных приложения / откуда угодно ('''fetch''')
: А этого этапа может не существовать вообще в компонентах создания новых объектов (но не редактирования сущестующихсуществующих).
* Объединение данных из базы и изменений, вытащенных check_data ('''merge''')
: Идея в том, что нужна возможность попасть на интерфейс редактирования какого-то объекта, но чтобы в форму уже были внесены некоторые изменения.
: Например, преобразование времени в человеко-читаемый формат и т. п.
* Выполнение изменений ('''save''')
: Например, В простейшем случае выполнение SQL-запроса обновления UPDATE к БД.: Здесь Но также здесь, например, можно реализовать универсальную модерацию — «запрос на правку» ($data) сериализуется, сохраняется в таблицу, потом модератор проверяет и принимает либо отклоняет.
: Кстати, функция после отработки и сама может отдавать редирект куда-нибудь, например, на страницу с результатами редактирования. По умолчанию же, если save вернёт ИСТИНУ и не выведет ничего в \%rv, будет редирект на исходный URL редактирования.
Порядок действий:
# Если умеем, проверить доступ (выполнить '''check_access''', если функция существует). Если она вернёт ЛОЖЬ:
#: Если она что-то вывела в \%rv (данные шаблона), вернуть \%rv
#: Иначе просто отдать статус HTTP ''403 Forbidden''