[英]How to add flag to active record object in rails
假設我有一個這樣的對象
@contacts = Contact.first(5)
聯系人表有4列,名稱,ID,created_at,updated_at
現在,我想為每個對象添加一個標記,用於像這樣的聯系人的姓名和ID
@contacts.each do |contact|
contact.add(name_flag) = true if {my condition here}
end
在視圖中,我想根據標志輸出聯系人
<% @contacts.each do |contact| %>
<%= contact.['name'] if contact.[name_flag'] %>
<% end %>
在控制器中:
con = Contact.first(5)
@contacts = []
con.each do |contact|
if my_condition_here
contact['name_flag'] = true
end
@contacts << contact
end
鑒於:-
<% @contacts.each do |contact| %>
<%= contact.name if contact['name_flag'] %>
<% end %>
只要您的條件不太復雜,將其真正放入您的視圖就沒有問題:
<% @contacts.each do |contact| %>
<%= contact.name if {your condition here} %>
<% end %>
編輯:
如果要將此條件移至模型中,則只需在Contact模型中定義一個方法:
def name_flag
{your condition here}
end
然后可以在視圖中調用此方法:
<% @contacts.each do |contact| %>
<%= contact.name if contact.name_flag %>
<% end %>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.