我正在尝试在未正确填充表单时呈现特定的布局:
在我的观点/布局中,我是:
我的控制器:
class UsersController < ApplicationController
def new
@user = User.new
render layout: "empty" # I wan to re-use this layout is the user is not been saved
end
def create
@user = User.new(user_params)
if @user.save
redirect_to sign_in_path
else
render :new
end
end
def user_params
params.require(:user).permit!
end
end
问题在于,当它不正确时它会重新呈现新动作但是它使用应用程序默认布局而不是其他布局文件: empty.html.erb < /强>
根据Rails guide lines它应该有用......但不适合我:(
感谢您的时间
答案 0 :(得分:1)
在def create
方法中,render :new
使用默认布局呈现new.html.erb视图。你可以尝试
render layout: "empty", template: "users/new"
render
仅根据给定的布局和模板“绘制”页面。
redirect_to "new"
将发送new
操作请求。