[英]How to display all instances of a model in Rails?
在我的Web應用程序中,用戶可以選擇實體的某些實例。 例如,在BubbleGum
類BubbleGum
,現在用戶可以通過使用其標識符來選擇BubbleGum
的某些實例:
gums/details?show=3532667
現在,此外我還希望能夠顯示所有的BubbleGums
。 為此我引入了使用*
來識別所有的慣例
gums/details?show=*
到目前為止這很好用,但我經常需要添加一些代碼來處理*
選擇。 有沒有一種很好的方法來表示Ruby和/或Rails中的所有實例對象?
我曾想過使用一個專門的符號,常量或類BubbleGum
的實際對象來代表所有其他泡泡糖。
要顯示rails應用程序中的所有實體,我們通常使用索引頁面。
bubble_gums_controller.rb
def index
@bubble_gums = BubbleGum.all
end
視圖/ bubble_gums / index.html.erb
<% @bubble_gums.each do |bubble_gum| %>
<tr>
<td><%= bubble_gum.name %></td>
<td><%= bubble_gum.price %></td>
</tr>
<% end %>
有關詳細信息,請參閱此處
http://guides.rubyonrails.org/getting_started.html#listing-all-posts
我想你想使用查詢字符串param show。 所以,你可以試試你的牙齦控制器:
def details
if params[:show] == "*"
@bubble_gums = BubbleGum.all
# ...
elsif params[:show]
@bubble_gum = BubbleGum.find(params[:show])
# ...
else
render :status => 404
end
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.