Yii2 - Was ist der beste Weg, um alle eindeutigen Modellattributwerte zu erhalten?

8

Meine Modell-FAQ hat 4 Attribute

* @property integer $id * @property string $chapter * @property string $question * @property string $answer

Im Moment sieht meine ActionIndex-Funktion wie

aus %Vor%

Wie kann ich ein Array von einzigartigen Werten von $ chapter mit Yii2 oder PHP in Controller bekommen? Sagen wir in SQL sieht es aus wie

SELECT DISTINCT chapter FROM ' faq_table'

    
st.limp 15.08.2015, 11:52
quelle

1 Antwort

14

Dies kann so gemacht werden:

%Vor%

Wenn Sie die Ergebnisse als einfaches Array anstelle eines Arrays mit Faq-Modellen wünschen, können Sie asArray() vor ->all() hinzufügen.

Wenn Sie den folgenden Code ausführen, wird Ihnen angezeigt, dass er genau diese Abfrage erzeugt.

%Vor%

Zusätzlicher Kommentar. Ich denke auch, es ist besser, die Zeile $faq = Faq::find()->all(); zu entfernen und $dataProvider->getModels() zu verwenden, wenn Sie die Modelle verwenden möchten. Auf diese Weise wird die Abfrage zum Abrufen der Daten nicht zweimal ausgeführt.

    
jagsler 15.08.2015, 12:29
quelle

Tags und Links