2012-08-15 84 views
0

的Ruby,Rails 3中,新手Rails視圖HAML「未定義的方法」的link_to

我伸出的一類分配的工作Rails應用程序(顯示的電影),所以基本水暖工程確定。

我增加了一個入口到routes.rb中 -

match "/movies/directed_by/:director" => "movies#directed_by" 

我耙路線再有入

/movies/directed_by/:director(.:format) {:controller=>"movies", :action=>"directed_by"} 

通知沒有指定 「路徑」,也不支持HTTP的方法(GET如)

對於其他(Rails Model自動生成的)路徑,指定的路徑和動詞

我有一個控制器的方法

def directed_by 

    # some code 

end 

我在哪裏加入

= link_to 'Find Movies With Same Director', directed_by(@movie.director) 

其中引發運行時錯誤視圖文件../app/Views/show.html.haml -

NoMethodError in Movies#show 

Showing /home/saasbook/hw3/hw3_rottenpotatoes_rjf/app/views/movies/show.html.haml where line #22 raised: 

undefined method `directed_by' for #<#<Class:0xc564594>:0xc532198> 

所以我的問題是,現在我要調整我的routes.rb和/或查看哈姆將所有東西捆綁在一起?

歡迎提供所有提示。

回答

1

在路線:

match "/movies/directed_by/:director" => "movies#directed_by", :as => :movie_direct_by 

然後在您的視圖:

= link_to 'Find Movies With Same Director', movie_direct_by_path(@movie.director) 
+0

啊哈!我嘗試過「match」/ movies/directed_by /:director「=>」movies#directed_by「,:as => foo」沒有成功,但現在我知道我還需要冒號「:foo」。謝謝。 – Rich 2012-08-15 19:28:59

相關問題