Ich habe ein inneres Join-Kriterium erstellt, um eine Liste von Elementen im Backend anzuzeigen.symfony: versuchen, ein Feld aus einem anderen Modell in einer Back-End-Liste hinzuzufügen. Innerer Join
Dies sind meine Modelle:
user:
name: { type: varchar(255) }
age: { type: integer }
article:
title: { type: varchar(255) }
content: { type: varchar(255) }
user_id: { type: varchar(255) }
und das ist mein generator.yml (ein Teil) des Artikels Modul:
list:
peer_method: getArticles
display: [title, content, age]
Und das ist die Methode getArticles():
public static function getArticles()
{
$con = Propel::getConnection();
$sql = "select * from article LEFT JOIN user ON article.user_id = user.id";
$stmt = $con->prepare($sql);
$result = $stmt->execute();
$articles = self::populateObjects($stmt);
return $articles;
}
Wie Sie sehen können, möchte ich die Spalte anzeigen, die dem Feld "Alter" entspricht, also wenn ich versuche, die Liste der Artikel anzuzeigen ein Fehler, der so etwas wie "Die Methode Articles :: getAge() ist nicht definiert".
Also ich denke, ich sollte die Methode Articles :: getAge() erstellen, aber .. was soll ich innen schreiben? Ein neues Kriterium, das das Benutzerobjekt abruft, das dem Wert des Feldes user_id des Artikels entspricht? Oder liege ich mit anderen Dingen falsch?
sf 1.4/treiben
Grüße
Javi