У меня есть что-то странное в моем приложении rails, я пытаюсь перенаправить пользователя на определенную страницу, если форма неправильная. Он работает, но URL-адрес не соответствует представлению.rails - URL-адрес не совпадает с представлением
Я использую файлы, созданные rails g scaffold User
. Я добавил конкретное условие в файле модели, чтобы проверить ввод пользователя, чтобы увидеть, хорошо ли форматируется форма или нет, а если нет, перенаправляет его на вид соединения.
перенаправить его между 2 разными контроллерами
Так я повернул это (приложение/контроллер/users_controller.rb):
def create
@user = User.new(user_params)
respond_to do |format|
if @user.save
format.html { redirect_to root_path, notice: 'User was successfully created.' }
format.json { render :show, status: :created, location: @user }
else
format.html { render :new }
format.json { render json: @user.errors, status: :unprocessable_entity }
end
end
end
в это:
def create
@user = User.new(user_params)
respond_to do |format|
if @user.save
format.html { redirect_to root_path, notice: 'User was successfully created.' }
format.json { render :show, status: :created, location: @user }
else
format.html { render :template => 'pages/connection' }
format.json { render json: @user.errors, status: :unprocessable_entity }
end
end
end
Я пытался и я хорошо перенаправлен на страниц/connection.rb, но адрес в моем браузере: http://url:8080/users
, а не http://url:8080/connection
. Поэтому, если я обновляюсь, он оставляет страниц/connection.rb до пользователей/.
Также, сообщения об ошибках от model/user.rb не отображаются.
что не так в моем коде?
'Кроме того, сообщения об ошибках от модели/user.rb не displayed.' - вы пытались перечислить их на ваш взгляд? – max
действительно я копирую вставить некоторый контент из файлов, созданных эшафотом, и я забыл скопировать user.errors.full_messages – Tellimi