Es tut mir sehr leid, wenn ich eine so triviale Frage posten, aber ich bin wirklich fest und Google konnte mir nicht helfen, vielleicht weil ich neu bei Ruby on Rails bin.Erstellen einer korrekten Abfrage mit Joins
Ich habe zwei Tabellen:
Person
id: Integer
name: String
Adresse
id: Integer
person_id: Integer
name: String
Ich möchte eineabrufenverbunden mit einem Address
. Diese Code-Schnipsel funktioniert, aber nur, wenn es tatsächlich eine Adresse für diese Person zur Verfügung steht:
@person = Person.where('person.id' => params[:id])
.joins(:address)
.select('person.id as id, address.id as aid, person.name as name, address.name as aname').first
Meine Ansicht:
<h2><%= @person.name %></h2>
<p><%= @person.aname %></p>
Vielleicht ist ein m etwas konzeptionelles falsch zu machen. Wie ich schon sagte, sobald eine Person
eine verwandte Address
hat, zeigt meine Ansicht es, andernfalls, wenn es keine Address
gibt, druckt es einen Fehler.
Was ist der Fehler, den Sie bekommen haben? – Pavan