Ruby on rails 3 如何将id从link_传递给本地人?

Ruby on rails 3 如何将id从link_传递给本地人?,ruby-on-rails-3,link-to,locals,Ruby On Rails 3,Link To,Locals,我正在将id从link\u传递到locals。但是它找不到结果,说找不到没有id的文章。我需要在模式中传递显示文章的id <% @articles.each do |a|%> <p> <%= link_to a.title, {"data-toggle" => "modal", "data-target" => '#myModal', :id => a.id}%> </p> <% end %> <div

我正在将
id
link\u传递到
locals
。但是它找不到结果,说
找不到没有id的文章
。我需要在模式中传递显示
文章的id

<% @articles.each do |a|%>
<p>
    <%= link_to a.title, {"data-toggle" => "modal", "data-target" => '#myModal', :id => a.id}%>
</p>
<% end %>

<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria labelledby="myModalLabel" aria-hidden="true">
<%= render :partial => "site#show", :locals => {@article => Article.find(params[:id])}%>
</div>
我正在从控制器那里获取id。这不是零。
问题是我能够在
块中找到文章,但无法将其发送给本地人。

这是因为params[:id]为null或带有params[:id]的记录不存在

在控制器中,如果不处理具有特定id的项目,您应该找到该项目是否存在的位置

@article = Article.find(params[:id])

最好的做法是不要在视图中使用查找器。

确保params[:id]不是nil,并且在传递局部变量时,应始终使用符号并将其作为局部变量访问 e、 g

“site#show”,:locals=>{:article=>article.find(params[:id])}%> 在_show.html.erb中


将其用作

i,并使用控制器代码进行更新。我认为语法有问题。我使用的是bootstrap的模态。。不知怎的,我已经通过了,但不是我需要通过的那个<代码>id=#myModal
这是传递。。但是我不能通过
:id=>a.id
@article = Article.find(params[:id])