ruby-on-rails - form_for 参数

标签 ruby-on-rails form-for

我需要将表单提交到外部 URL,所以我有这个:

form_for(@task, :url => "https://www.external.com/Submit") do |f|)
    <%= f.hidden_field :assignmentId, :value => @assignment %>
    <%= link_to image_tag(@imagelocation) %>
....

我正在使用 form_for ,因为我需要访问我的 Controller 变量。

外部服务器寻找一个参数,assignmentId .当表单被提交时,参数实际上是可用的
params[:task][:assignmentId]

无法通过外部服务器上的验证。

我该如何解决?如何从 Controller 访问变量并将“裸”参数传递给外部服务器?

[编辑] 这是提交参数的样子

utf8=%E2%9C%93&_method=put&task%5BassignmentId%5D=2LVQ39Z0B6UWI8NXYWJTYRKGQXIMXN&task%5Boutput%5D=carpet&commit=Post



我希望它没有引用任务。

最佳答案

使用 hidden_field_tag而不是 f.hidden_field .顺便说一句,如果您希望此字段存储作业的 id,您应该使用 @assignment.id ,不仅仅是 @assignment .

<%= hidden_field_tag :assignmentId, @assignment.id %>

关于ruby-on-rails - form_for 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15606517/

相关文章:

ruby-on-rails - 基于 rails/ruby 的框架中的复合 UI 实现

ruby-on-rails - rails 4.0 : Selected value for form_for [select]

ruby-on-rails - Rails - 更新未选中的复选框时缺少参数(作为 nil 值)

ruby-on-rails-3 - Rails 3 嵌套资源路由问题作为 form_for

javascript - rails : Calling JS function on form_for radio buttons

ruby-on-rails - Rails : Hidden field in form_for is not sending parameters to controller

ruby-on-rails - 是否可以使用 URL 在另一个应用程序中显示来自 rails 事件存储的图像?

ruby-on-rails - 如何使用 Minitest 在没有数据库的情况下测试 Controller ?

ruby-on-rails - 嵌套 JSON 的存储访问器

ruby-on-rails - 在 Ruby on Rails Web 应用程序中生成图表的首选方法是什么?