Finden Sie die Elemente mit belongs_to Verbände in Rails?
Ich habe ein Modell namens Kase jeder "Fall" zugeordnet ist, einen Ansprechpartner über den folgenden code:
class Kase < ActiveRecord::Base
validates_presence_of :jobno
has_many :notes, :order => "created_at DESC"
belongs_to :company # foreign key: company_id
belongs_to :person # foreign key in join table
belongs_to :surveyor,
:class_name => "Company",
:foreign_key => "appointedsurveyor_id"
belongs_to :surveyorperson,
:class_name => "Person",
:foreign_key => "surveyorperson_id"
Ich Frage mich, ob es möglich ist, die Liste auf der Kontakt-Seite alle von kases, dass sich die person zugeordnet ist.
Ich nehme an, ich muss verwenden Sie den Befehl suchen innerhalb der Person-Modell? Vielleicht so etwas wie die folgenden?
def index
@kases = Person.Kase.find(:person_id)
oder bin ich komplett Missverständnis alles wieder?
Dank,
Danny
EDIT:
Wenn ich:
@kases= @person.kases
Kann ich erfolgreich Folgendes tun:
<% if @person.kases.empty? %>
No Cases Found
<% end %>
<% if @person.kases %>
This person has a case assigned to them
<% end %>
aber wie kann ich die Ausgabe der "jobref" - Feld aus dem kase Tabelle für jeden Datensatz gefunden?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vielleicht folgenden arbeiten:
wo
some_id
ist ein integer-Wert.Bearbeiten
haben Sie Verband, so dass Sie direkt verwenden können, wie folgt:
in Ihrem
show.rhtml
können Sie mit Instanz-variable direkt in Ihre .rhtmlauch
@kases
ist ein array, so dass Sie haben, Durchlaufen Sie es.Wenn Ihr person-Modell hat der Verein has_many :kases dann können Sie alle Fälle, das gehört zu einer person mit dieser
Vorausgesetzt person_id hat die id der person, die Sie sehen möchten der Fälle für.
Würden Sie wahrscheinlich wollen etwas, wie
in Ihrer Person-Modell, das können Sie tun
@kases = Person.find(person_id).kases
sowie alles andere, was has_many ermöglicht.
Eine Alternative Methode wäre durch Kase direkt:
@kases = Kase.find_all_by_person_id(person_id)