Rails查看haml“undefined method”link_to

时间:2012-08-15 18:39:30

标签: ruby-on-rails routes haml

Ruby,Rails 3,新手

我正在为一个类分配扩展一个工作的Rails应用程序(显示电影),所以基本的管道工作正常。

我在routes.rb中添加了一个条目 -

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

我的佣金路线有一个条目

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

注意没有“路径”,也没有指定HTTP方法(例如GET)

对于其他(Rails模型自动生成)路由,路径和动词指定。

我有一个控制器方法

def directed_by

  # some code

end

我有一个View文件../app/Views/show.html.haml我添加了

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

抛出运行时错误 -

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和/或查看haml以将所有内容捆绑在一起?

欢迎所有提示。

1 个答案:

答案 0 :(得分: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)