【发布时间】:2012-12-17 16:57:54
【问题描述】:
我正在尝试实现“类别”的无序列表,如果您单击特定类别,则属于该类别的所有照片(jags)都会显示在屏幕上。我对这些类别的看法是:
<div id = "Categories">
<h2>Categories</h2>
<ul><% @cat.each do |c| %>
<li><%=link_to c.name, c,:controller => "category", :action => "show" %>
</li>
<% end %>
</ul>
我的类别控制器是:
def show
@jags = Jag.where("category_id = params[:id]")
if @jags.empty?
flash[:notice] = "No jags in this Category"
end
end
最后我的节目是:
<%= render 'nav' %>
<div><% @jags.each do |j| %>
<%= image_tag j.image_url(:thumb)%>
<% end %>
</div>
我遇到的问题是我不知道如何在第一个视图中将我的“特定类别”(c)传递给类别控制器。
我尝试使 c 成为实例变量(@c),但显然我不能这样做[正式参数不能是实例变量 '); @cat.each 做 |@c| ;@output_buffer.safe_concat('].
如果我运行此代码,我会收到 SQLlite 错误[SQLite3::SQLException: near "[:id]": syntax error: SELECT COUNT(*) FROM "jags" WHERE (category_id = params[:id])] .
【问题讨论】:
标签: ruby-on-rails link-to