我正在开发一个ROR应用程序,我想在表单重新加载来自服务器端的一些错误之后保留表单值,这样用户就不必再次填写表单了。
答案 0 :(得分:1)
这是标准功能,使用@instance variable
启用。这允许您将数据发送到Ruby类(控制器)并在单个实例中处理返回的数据
你这样做:
#app/controllers/posts_controller.rb
def new
@post = Post.new #-> notice instance variable
end
def create
@post = Post.new(post_params)
@post.save
end
private
def post_params
params.require(:post).permit(:title, :body)
end
这使您可以维护新创建的ActiveRecord对象的实例。这意味着每次您无法提交表单时,您将收到先前输入的数据错误