Каково различие между перенаправлением и вперед в Symfony?

Учитывая разницу точек на дюйм между iPhone и симулятором, вы можете использовать необработанные значения пикселей 480x320 для экрана iPhone.

18
задан Habeeb Perwad 20 February 2013 в 10:24
поделиться

1 ответ

В некоторых случаях выполнение действия заканчивается запросом выполнения нового действия. Например, действие, обрабатывающее отправку формы в запросе POST , обычно перенаправляет на другое действие после обновления базы данных. Другим примером является псевдоним действия: действие index часто является способом отображения списка и фактически перенаправляет действие списка.

Класс действия предоставляет два метода для выполнения другого действия:

Если действие пересылает вызов на другое действие:

$this->forward('otherModule', 'index');

Если действие приводит к веб-перенаправлению:

$this->redirect('otherModule/index');
$this->redirect('http://www.google.com/');

Выбор между перенаправлением или переадресацией иногда бывает непростым. Чтобы выбрать лучшее решение, имейте в виду, что форвард является внутренним для приложения и прозрачным для пользователя. Что касается пользователя, отображаемый URL совпадает с запрошенным. Напротив, перенаправление - это сообщение браузеру пользователя, включающее новый запрос от него и изменение окончательного результирующего URL.

Если действие вызывается из отправленной формы с помощью method = "post" , вы всегда должны делать перенаправление. Основное преимущество заключается в том, что если пользователь обновит полученную страницу, форма не будет отправлена ​​повторно; кроме того, кнопка «Назад» работает должным образом, отображая форму, а не предупреждение, спрашивающее пользователя, хочет ли он повторно отправить запрос POST .

форма больше не будет отправлена; кроме того, кнопка «Назад» работает должным образом, отображая форму, а не предупреждение, спрашивающее пользователя, хочет ли он повторно отправить запрос POST .

форма больше не будет отправлена; кроме того, кнопка «Назад» работает должным образом, отображая форму, а не предупреждение, спрашивающее пользователя, хочет ли он повторно отправить запрос POST .

38
ответ дан 30 November 2019 в 07:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: