所以我正在开发一个工作门户网站,我希望将当前的工作ID传递给“工作应用程序”控制器#new方法,但我遇到了问题。
因此,当用户点击“Job_applications #new”时,它会获取当前页面的job_id。
模型
Class Job
has_many :job_applications
end
Class JobApplication
belongs_to :job
end
在我的Job_Applications Controller
中def create
@job = Job.find(params[:id])
*Additional save & Redirect methods*
end
在我的视图中,我有以下代码
<%= link_to "Apply Now",new_job_application_path(:id => @job.id), class: "btn btn-primary" %>
我知道我在这里做了一些愚蠢的事情,理想情况下,我想传递工作ID,而不是在URL中
实施例
domain.com/job_application/new
但是这个方法显示了这个
domain.com/job_application/new?id=3
任何帮助非常感谢
答案 0 :(得分:0)
致电时
new_job_application_path(id: @job.id)
你应该能够像你一样检索它:
@job = Job.find(params[:id])
答案 1 :(得分:0)
如果你希望你的参数没有出现在网址中,你必须使用POST
请求。
但请注意,使用“新”字样的帖子请求行动不是“休息”,这是Rails的基础,但并非不可能。
详细了解&#39; Restful routes&#39; here