2016-08-02 58 views
0

我試圖添加一個新的鏈接添加一個新的鏈接,以一種形式的連接表的鏈接給錯說了,沒有路,我使用Rails APIRails的索引頁

<%= link_to("Add New Alarm/List", {:action => 'new_alarm', :controller =>'alarms'}, :class => 'action new') %> 

任何幫助,請 在此先感謝

+0

你也可以粘貼錯誤嗎? –

回答

0

,我認爲你應該能夠使用的警報路線,爲您提供在你的路由文件中有resources :alarms。要檢查您可以使用的路線,您可以運行rake routes

<%= link_to "Add New Alarm/List", new_alarm_path, :class => 'action new' %> 

編輯:

resources :alarms通過使用您的alarms_controller的new方法和new.html.erb文件在你的報警/文件夾設置了new_alarm_path。如果你在你的控制器中定義了新的方法,並且新的html文件被稱爲new.html.erb,如果你使用{:action => 'new'

+0

非常感謝您的回答,但是在何處定義new_alarm_path指向控制器中的新操作, 以及如果我想在控制器中創建新定義,例如對於新「新」方法,例如「 new2「 – peterateftawfik

+0

當你設置資源:報警時,它應該自動設置new_alarm_path的路由,如果你想使用其他方法的鏈接(需要在報警控制器中定義爲'new_alarm'),你可以使用' %= link_to(「Add new」,{:action =>'new_alarm',:controller =>'alarms'})%>'儘管您應該嘗試使用默認路由(即new_alarm_path用於新方法),你爲什麼想要第二個新方法? – Rixcy

+0

例如,我想創建一個新的頁面,例如,添加一個報警到一個列表,但當url是http:// localhost:3000/alarms/new2,系統處理該url,就好像它是顯示和想找到id爲'new2'的警報,並且當它得到一個錯誤,它找不到這個ID – peterateftawfik