2017-01-30 4 views
1

Ich bin neu in Ruby und habe eine App, in der Benutzer sind entweder "plan_id = 1" oder "plan_id = 2".spezifischen Benutzerplan mit users.each anzeigen

Ich habe einen Abschnitt, der verwendet: <% @users.each do |user| %>, um alle Benutzer anzuzeigen.

Ich möchte diese Seite nur für Benutzer von "plan_id 2" sichtbar machen, während nur Benutzer von "Plan_id 1" angezeigt werden.

Einfach Ich bin sicher, aber ich bin neu, so dass jeder Vorschlag geschätzt wird.

Wie mache ich das?

+0

können Sie bitte Schema senden –

Antwort

3

können Sie einen Bereich erstellen Anwender erhalten mit plan_id = 1

-Controller

@users = User.where(plan_id: 1) 

# or create a scope 

scope premium_users, -> { where(plan_id: 1) } 

def your_method 
    @users = User.premium_users 
    # ... 
end 

Überprüfen Sie, ob aktuelle Benutzer 2 = plan_id hat und geben Sie dann den Block

Ansicht

<% if current_user.plan_id == 2 %> 
    <% @users.each do |user| %> 
    # Your stuff here 
    <% end %> 
<% end %> 
+0

Works. Vielen Dank! – ChrisJC2017

Verwandte Themen