Ruby on rails 将附加表单数据发送到Rails`form_for`helper中的控制器
如果我有一个用户模型,并且我使用:Ruby on rails 将附加表单数据发送到Rails`form_for`helper中的控制器,ruby-on-rails,forms,Ruby On Rails,Forms,如果我有一个用户模型,并且我使用: form_for@user,url:{controller::user,action::create}do | f | 我可以通过以下方式添加所需字段(例如): 但是在我正在处理的这个特定的管理页面上,我想将附加数据发送回我的控制器,这些数据不是用户模型的一部分,即 这给了我一个“undefined method some_info”错误 有没有一种方法可以让我的表单助手允许我设置额外的字符串,作为控制器逻辑的一部分使用?我们可以在rails中使用一个名为
form_for@user,url:{controller::user,action::create}do | f |
我可以通过以下方式添加所需字段(例如):
但是在我正在处理的这个特定的管理页面上,我想将附加数据发送回我的控制器,这些数据不是用户模型的一部分,即
这给了我一个“undefined method some_info”错误
有没有一种方法可以让我的表单助手允许我设置额外的字符串,作为控制器逻辑的一部分使用?我们可以在rails中使用一个名为
attr\u accessor
的方法来定义不在指定模型中的额外字段
试着这样做:
在model.rb文件中添加以下行
attr_accessor :some_info
并将这一行添加到表单中
<%= f.text_field :some_info %>
@gFontaniva是正确的,而不是
将其从表单变量中排除,并使用tag方法,如下所示:
然后可以在表单模型的范围之外从控制器访问,因此可以访问第一个示例:
params[:用户][:一些信息]
第二个版本:
params[:一些信息]
完全符合我的需要。我不知道我是否理解,但我认为您可以使用a在模型之外发送数据。