Wenn ich Model::find()
verwende, lautet die Antwort Resultset von Models, aber wenn ich columns
Parameter hinzufüge, um zurückgegebene Spalten zu beschränken, lautet die Antwort Resultset of Rows.Phalcon find with columns Parameter gibt Zeilen anstelle von Modellen zurück
Beispiel:
// Resultset of Models
$users = \Models\Users\Users::find();
// Resultset of Rows
$users = \Models\Users\Users::find([
'columns' => 'id, email'
]);
Das bin ich nicht in der Lage macht Modell Methoden aufrufen. Gibt es eine Möglichkeit, Resultsets von Models mit Spalten in :: find() -Methoden einzuschränken? Ich bin mir nicht sicher, aber dies scheint wie Fehler, da Phalcon docs sagt:
Während findfirst() direkt eine Instanz der genannten Klasse zurückgibt (wenn Daten zurückgegeben werden soll), die find() Methode gibt einen Phalcon \ Mvc \ Model \ Resultset \ Simple zurück.
Und es gibt nichts über die Ausnahme dieser Regel bei der Verwendung columns
Parameter.
Ich würde auch bemerken, dass andere Parameter von :: find() wie condition
, order
, bind
usw. gut funktioniert (Modelle zurückgegeben).
Phalcon 1.3.4
Wenn bestimmte Spalten auswählen, werden Sie immer ein 'Resultset von Rows' bekommen, weil Phalcon nicht in der Lage ist um Ihre vollständige 'Users'-Modellstruktur zurückzugeben, deshalb wird sie nicht als 'Users'-Objekt" erkannt ". – Timothy