Rails表单预览页面

时间:2017-03-15 18:18:19

标签: ruby-on-rails ruby

我想将Job数据保存在数据库中,然后重定向到预览页面(而不是show页面),该页面显示刚刚提交的Job表单中的所有信息(基本上是{{{ 1}}页面)。

目前,当用户提交表单(没有错误)时,将创建状态为“已暂停”的作业。并且用户被重定向到show.html.erb页面。但是我在显示作业信息时遇到问题,我收到preview错误。

我还尝试使用Couldn't find Job without an ID中的@job.id传递<%= f.hidden_field :job_id, value: @job.id %>,但我收到此错误:jobs/_form.html.erb

控制器/ jobs_controller.rb

Can't mass-assign protected attributes for Job: job_id

2 个答案:

答案 0 :(得分:2)

您的代码几乎是正确的。将id作为preview_path的网址参数传递:

if @job.save
  format.html {redirect_to preview_path(id: @job.id), notice: 'Job was successfully created.' }
  # ...

答案 1 :(得分:1)

您没有通过重定向传递@job对象:

 redirect_to preview_path(@job)