在Ruby on Rails中保留表单值

时间:2014-03-10 08:16:49

标签: ruby-on-rails forms validation

我正在开发一个ROR应用程序,我想在表单重新加载来自服务器端的一些错误之后保留表单值,这样用户就不必再次填写表单了。

1 个答案:

答案 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对象的实例。这意味着每次您无法提交表单时,您将收到先前输入的数据错误