Инструменты пользователя

Инструменты сайта


ядро:w_response

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ядро:w_response [2018/11/29 03:15]
a1 [Конструктор]
ядро:w_response [2018/11/29 04:16] (текущий)
a1 [Поля]
Строка 10: Строка 10:
 ^Поле^Описание^Тип^ ^Поле^Описание^Тип^
 |fail|true, при ошибке формы|boolean| |fail|true, при ошибке формы|boolean|
 +|request|Новые данные запроса страницы|object|
 +|redirect|Ссылка переадресации страницы. ''​reload'',​ для перезагрузки|string|
 +|url|Новый url страницы|string|
  
-===== Методы ​объекта ​=====+===== Статичные методы ===== 
 +==== load ==== 
 +w_response::​**load**(//​context//​)
  
-==== Конструктор ==== 
-new w_response(//​context//​) 
 Инициализация объекта Инициализация объекта
  
 ^Аргумент^Описание^Тип^По-умолчанию^ ^Аргумент^Описание^Тип^По-умолчанию^
-|context|Контекст,​ необходимый для обработки слоев|object| |+|context|Контекст,​ необходимый для обработки слоев|object ​обязательный| |
 ^Возвращает|Объект w_response|[[ядро:​w_response|Объект w_response]]| | ^Возвращает|Объект w_response|[[ядро:​w_response|Объект w_response]]| |
  
 +===== Методы объекта =====
 ==== errorField ==== ==== errorField ====
 w_response::​**errorField**(//​test//,//​field//,//​message//​) w_response::​**errorField**(//​test//,//​field//,//​message//​)
Строка 54: Строка 58:
 |layout_to|Имя слоя, в который необходимо поместить данные|[[:​js#​именование_слоев|Имя слоя]]|null| |layout_to|Имя слоя, в который необходимо поместить данные|[[:​js#​именование_слоев|Имя слоя]]|null|
 ^Возвращает|true|boolean| ​ ^Возвращает|true|boolean| ​
 +
 +===== Формат ответа =====
 +После завершения выполнения формируется JSON-ответ в следующем формате
 +
 +<code javascript>​
 +{
 +   fail: null, //​результат валидации
 +   src: [  //​массив слоев ​
 +      {
 +        layout:​string,​ //имя целевого слоя
 +        src:string, //​исходный код слоя
 +      }
 +   ],
 +   ​errors:​ { }, //​список ошибок валидации (поле: текст ошибки)
 +   ​redirect:​ string, //​ссылка для переадресации
 +   url: string, //​новый url страницы
 +   ​request:​ {} //​новые данные запроса страницы
 +}
 +</​code>​
 +===== Пример =====
 +<code php>
 +$response = w_response::​load($this);​ //​получение объекта результата запроса
 +$field1 = w_input::​int('​field1'​);​ //​получаем поле field1 как число
 +$field2 = w_input::​text('​field2'​);​ //​получаем поле field2 как текст
 +         
 +$response->​errorField($field1,​ '​somebody.field1',​ '​Поле field1 заполнено неверно'​); ​
 +$response->​errorField($field2,​ '​somebody.field2',​ '​Поле field2 заполнено неверно'​);​ //​проверка полей
 +   
 +if (!$response->​fail) { //​проверяем,​ если проверка прошла успешно
 +   ​$response->​render('​user.user.profile'​);​ //​обрабатываем для вывода профиль пользователя
 +   ​$response->​info = '​Все ок!';​ //​передаем переменную info
 +}
 +$response->​exec();​ //​Отправляем данные
 +</​code>​
  
  
ядро/w_response.1543450549.txt.gz · Последние изменения: 2018/11/29 03:15 — a1