2016-07-07 29 views
-2

我做一個查詢找不到與 'ID' 工作=:27

@job = Job.find(params[:id]) 

的URL是 http://localhost:3000/jobs/:27

所以對於作業ID的PARAMS在URL,並我知道工作27存在。 它工作正常,當我搜索

@job = Job.find(27) 

所以我認爲這是導致錯誤的結腸。但它應該工作。這讓我瘋狂。 有沒有辦法擺脫冒號或有什麼簡單的東西我應該東?

+0

你是如何在你的視圖中創建該路徑? – jeffdill2

回答

2

您的網址應該是http://localhost:3000/jobs/27

當軌道看到像/jobs/:id的路線,它知道到:id轉化爲一個參數。因此你能夠做的原因是params[:id]。如果網址是動態生成的,我很想知道你在哪裏設置網址。

1

你可能得了路線爲:

resources :jobs 

在ROR您的工作創建URL應該是:

link_to job_path(@job.id) 

那麼這將產生網址:

http://localhost:3000/jobs/27 

因此,沒有冒號應該在url中生成。

-1

道歉的傢伙。是的,錯誤是當我在表單中生成url時。我已經把結腸中有在前面或ID ...

因此多數民衆贊成現在已經解決了..應該有工作,一出我貼滿過網:)

0

在你的表演動作之前,擺脫@job一起,只是使用:

@job = Job.find(params[:id])