Я нашел проверку формы CodeIgniter для отображения сообщения об ошибке с помощью метода load-> view, и при использовании «redirect» будет потеряно сообщение об ошибке поля.
В настоящее время я использую одну функцию для отображения страницы формы и другую функциючтобы отправить сообщение формы.
class Users extends CI_Controller {
function __construct() {
parent::__construct();
}
public function sign_up()
{
$this->load->view('users/sign_up');
}
public function do_sign_up(){
$this->form_validation->set_rules('user_login', 'User Name', 'trim|required|is_unique[users.login]');
$this->form_validation->set_rules('user_email', 'Email', 'trim|required|valid_email|is_unique[users.email]');
if ($this->form_validation->run() == FALSE) {
$this->load->view('users/sign_up');
}else {
// save post user data to users table
redirect_to("users/sign_in");
}
Когда проверка формы не удалась, URL в браузере изменится на "/ users / do_sign_up", я хочу сохранить тот же URL на странице sign_up.
Использовать перенаправление(«users / sign_up») метод при проверке формы не удастся сохранить тот же URL, но сообщение об ошибке проверки будет потеряно.
в Rails, я не могу использовать маршруты для настройки следующим образом:
get "users/sign_up" => "users#signup"
post "users/sign_up" => "users#do_signup"