我需要将表单提交到外部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
,因为我需要访问我的控制器变量。
外部服务器查找参数assignmentId
。提交表单时,param实际上可用作
params[:task][:assignmentId]
无法在外部服务器上通过验证。
我该如何解决这个问题?如何从控制器访问变量并将“裸”参数传递给外部服务器?
[edit]这是提交参数的样子
UTF8 =%E2%9C%93&安培; _method =放&安培;任务%5BassignmentId%5D = 2LVQ39Z0B6UWI8NXYWJTYRKGQXIMXN&安培;任务%5Boutput%5D =地毯&安培;提交=邮
我希望它没有引用任务。
答案 0 :(得分:5)
使用hidden_field_tag
代替f.hidden_field
。顺便说一句,如果您希望此字段存储作业的ID,则应使用@assignment.id
,而不仅仅是@assignment
。
<%= hidden_field_tag :assignmentId, @assignment.id %>