【发布时间】:2013-11-23 21:34:47
【问题描述】:
我有一个活动网站,在活动展示页面上有一个演讲者列表,我希望每个演讲者都有一个指向演讲者展示页面的链接。
我不确定 link_to 方法应该是什么,这是我目前所拥有的 -
查看
<% @event.speakers.append(nil).each_slice(6) do |speaker_block| %>
<div class="rowOfSpeakers row">
<% speaker_block.each_with_index do |speaker, index| %>
<div class="twocol<%= " last" if index == 5 || index == 11 %>">
<div>
<div class="speakerTwitter">
<%= link_to speaker.twitter, "http://twitter.com/#{speaker.twitter}" %>
</div>
<img src="<%= speaker.avatar %>" alt="<%= speaker.name %>">
</div>
<!-- Heres my link -->
<h3><%= link_to speaker.name, event_speaker_path(@speaker) %></h3>
</div>
<% end %>
</div>
<% end %>
以上链接导致以下错误
No route matches {:action=>"show", :controller=>"speakers", :event_id=>nil}
控制器
def show
@speaker = Speaker.find(params[:id])
end
路线
resources :events do
resources :leads, path: "download", only: [:new, :create]
resources :registrations, path: "register", only: [:new, :create, :index]
resources :speakers, only: [:show]
end
【问题讨论】:
-
在这种情况下,发布您的路线配置可能会很有用。
标签: ruby-on-rails ruby-on-rails-3 heroku