【发布时间】:2014-03-10 08:16:48
【问题描述】:
我正在开发一个 ROR 应用程序,我希望在表单重新加载后从服务器端出现一些错误,以便用户不必再次填写表单。
【问题讨论】:
-
Rails 默认有这个功能..
-
表单提交后。将带有值(@instance 变量)的表单请求呈现为新的操作表单。
标签: ruby-on-rails forms validation
我正在开发一个 ROR 应用程序,我希望在表单重新加载后从服务器端出现一些错误,以便用户不必再次填写表单。
【问题讨论】:
标签: ruby-on-rails forms validation
这是标准功能,使用@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 对象的实例。这意味着每次您无法提交表单时,您都会收到先前输入数据的错误
【讨论】: