我現在有一張桌子,顯示一組用戶的屬性。這是我的問題。每個人都有能力註冊一個組,但在某些邊緣情況下,一個人可以在沒有註冊到組的情況下進入桌面。爲了清楚讀取表格的用戶,我想簡單地將每個未註冊表的人員從表格中隱藏起來。這比我預想的要複雜一些。我會展示一些代碼和截圖,以便更好地理解。從視圖中隱藏數據庫中的信息。 - Rails
,你可以看到,如果一個人沒有組不顯示錶。
我試圖做一個方法,並在繪製表的控制器上調用它。人員和組是兩個不同的模型與HABTM的協會。如何在ruby中說「如果沒有人不在桌子上展示」?
def index
@people = Person.order(sort_column => sort_direction)
@groups = Group.all
end
這是使表
<table class="table table-striped">
<thead>
<tr>
<th><%= sortable 'phone_number', 'Phone Number'%></th>
<th><%= sortable 'subscribed', 'Subscribed'%></th>
<th><%= sortable 'city' %></th>
<th><%= sortable 'state' %></th>
<th><%= sortable 'zip' %></th>
<th><%= sortable 'country' %></th>
<th><%= sortable 'created_at', "Joined" %></th>
<th>Groups</th>
</tr>
</thead>
<tbody>
<% @people.each do |person| %>
<tr>
<td><%= person.phone_number %></td>
<td><%= person.subscribed? ? "Yes" : "No" %></td>
<td><%= person.city %></td>
<td><%= person.state %></td>
<td><%= person.zip %></td>
<td><%= person.country %></td>
<td><%= time_ago_in_words person.created_at %> ago</td>
<td><%= person.groups.order(:id).pluck(:name).to_sentence %></td>
</tr>
<% end %>
</tbody>
控制器
組模型
class Group < ActiveRecord::Base
has_and_belongs_to_many :people
has_and_belongs_to_many :messages
end
perons模型
class Person < ActiveRecord::Base
has_many :deliveries
has_and_belongs_to_many :groups
,你能告訴我們你的看法(?在那裏你通過循環的人 - 我猜)? – Anthony
如果你在團體和人之間有任何關聯,你是否也可以表明這一點? – sahil