ruby-on-rails – 使用Rails在同一页面上的多个表单

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 使用Rails在同一页面上的多个表单前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我正在为高中生构建一个rails应用程序,在创建用户时遇到了问题.

我希望学生只有在选择学校并正确输入学校密码后才能创建帐户.

这样做的最正确/最简单的方法是什么?我是否应该为用户创建一个看门人#他们必须首先传递的新动作,或者他们是否可以在同一页面上为学生提交表单.一个是常规用户名,电子邮件,密码使用:

form_for @user do
  ...
end

但随后为高中/高中密码选择创建了另一种形式.

理想情况下,控制器将能够获得高中形式的参数,验证那些,然后继续从用户参数创建用户.

这可能使用导轨吗?

我的设置:Rails 3和Ruby 1.9.2dev

谢谢!

解决方法

您可以使用fields_for( http://apidock.com/rails/ActionView/Helpers/FormHelper/fields_for)执行此操作

你的观点看起来像

form_for @user do |f|
  fields_for @school do |school|
    school.text_field     :name
    school.password_field :password
  end

  f.text_field     :username
  f.text_field     :email
  f.password_field :password
  f.submit "Submit"
end

然后在你的控制器中,params [:user]将代表用户数据,params [:school]将代表学校名称/密码.

然后,您可以在创建用户之前验证正确的学校密码.

猜你在找的Ruby相关文章