Ich habe eine Anwendung erstellt, wo ich Benutzern erlaube, ihre Workouts zu protokollieren.Die Logik aus der Sicht zu bekommen ... Hilfe mit named_scope
Der Benutzer kann ein privates oder öffentliches Protokoll seiner Trainingseinheiten speichern und wird durch ein check_box-Feld gekennzeichnet, das die Ganzzahl 1
an die Spalte workout.share übergibt. Das private Protokoll kann über den workouts_controller eingesehen werden, wo ich alle Ausgaben durch Filtern nach current_user einschränke.
workouts_controller.rb
@workouts = current_user.Workouts.all
Die öffentlichen Trainingseinheiten sind durch einen separaten community_controller gezeigt und es nenne ich das Training wie dieses
community_controller
@workouts = Workouts.all
und Filtern dann die Ergebnisse in der sehen Sie mit dem folgenden
<% @workouts.each do |workout| %>
<% if workout.share == 1 %>
...
<% end %>
<% end %>
Beste Ich kann sagen, dies ist nicht die bevorzugte Möglichkeit, dies zu tun, und mein Verdacht ist, dass ich ein named_scope möchte, so dass ich eine neue Variable erstellen kann @shared_workouts. Das heißt, dass ich mit den benannten Bereichen nicht vertraut bin, also könnte ich etwas Hilfe verwenden, wo und was die richtige Syntax ist.
Welche Version von Rails? –