Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 26 май 2022, 20:22

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
СообщениеДобавлено: 17 сен 2014, 23:47 
Не в сети
Новичок
Аватара пользователя

Зарегистрирован: 22 дек 2013, 17:11
Сообщения: 28
Имеется портал, где пользователи добавляют объявления.
При удачном добавлении требуется что бы пользователя редиректила на страницу успешного добавления... Ну и там буду выводиьт статический текст с POST значениями.
Я понимаю что в контролере происходит окончательный ответ о успешном добавлении, и потом тут надо перенаправлять...
Нарыл это http://kohanaframework.org/3.1/guide/ap ... t#redirect
но хз, пока не сообо хорошо разбераюсь в документации...

1. Надо ли в bootstrap.php прописать роут для перенаправлении?

2. Как правильно сделать перенаправление? и передать $_POST параметры, сейчас просто выводиться message сообщение.

Код:
if (isset($_POST['object_add']))
{
   $_POST['captcha'] = Captcha::valid($_POST['captcha']);

   $valid = $this->_model_object->valid_add($_POST);
   if ($valid['check'])
   {
      $res = $this->_model_object->add($_POST,$this->user->id,$this->user->company_id);
      if ($res)
      {

         $block_center->status = true;
         $block_center->message = __('object_add_ok');
      }
      else
      {
         if (isset($valid['errors'])) $this->errors[] = __('db_error');
         $block_center->data = $_POST;
         $block_center->status = false;
         $block_center->errors = $this->errors;
      }

   }
   else
   {
      if (isset($valid['errors'])) $this->errors = array_merge($this->errors,$valid['errors']);
      $block_center->data = $_POST;
      $block_center->status = false;
      $block_center->errors = $this->errors;
   }
}


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 18 сен 2014, 08:13 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
http://kohanaframework.org/3.3/guide-api/HTTP#redirect или http://kohanaframework.org/3.3/guide-ap ... r#redirect
Насчет доп.роута зависит от твоего набора роутов, может надо, а может и нет. При редиректе можно только GET данные передать, следовательно можно передать ,например, id новой записи или сообщение через сессию (что-то вроде https://github.com/WinterSilence/kohana-message , но попроще - тут я явно перемудрил).

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 18 сен 2014, 21:40 
Не в сети
Новичок
Аватара пользователя

Зарегистрирован: 22 дек 2013, 17:11
Сообщения: 28
хмм, наверное передча нового ID лучщий вариант, но тут у меня встал вопрос, напр. я делаю роут, прописываю в контролере проверку если $_POST выполнил запрос удачно перенаправлять на роут, а у роута прописан опять этот контролер, просто другйо метод, шаблон и... стоит как-то через 1 контролер делать или лучще поделить всё это?
Ещё была идея сделать один контролер который будет отвечать за такие сообщение... Дайте пожалуйста совета как правильнее тупо на пальцах.

P.S. Твои ссылки посмотрел, удивило что редирект только GET получает, а какой нибудь виде перенаправления получает POST? Ещё пока не особо хорошо разбираюсь в туториалах Коханы, напр.

Мне бы самый просто пошщаговый пример, как напр. после удачной рег. пользователя перекидывает на другую страницу, где видит текста...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 сен 2014, 09:06 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
Проще и понятнее использовать единый контроллер для CRUD действий. Обычно СUD действия редиректят на страницу R отображающую список, например, пользователей. По поводу "POST редиректа" https://ru.wikipedia.org/wiki/Post/Redirect/Get.

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 сен 2014, 21:31 
Не в сети
Новичок
Аватара пользователя

Зарегистрирован: 22 дек 2013, 17:11
Сообщения: 28
Вроде решаю...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group