function search e addCondition

Salve,

qualcuno potrebbe gentilmente spiegarmi come usare

$this->addCondition

dalla guida in inglese e dai tutorial mi è apparso poco chiaro.

Grazie

ciao,

penso sia una semplice condizione che solitamente usi nella query dopo il where.

Ad esempio




$criteria->addCondition('t.age < 10');

$criteria->addCondition('t.weight = 200');

$criteria->addCondition('t.email LIKE :parameter4');

$criteria->params[':parameter4']='email%';



addCondition ha un secondo parametro di default che è l’ AND

Magari vedere il log delle query può essere utile,( Firebug) e sperimentare

Ciao Alfire,

grazie mille per l’aiuto. Utilizzo da poco yii2 e ho un problema che non riesco a risolvere da giorni.

In pratica non riesco a costruire dinamicamente la condizione Where della funzione search.

Ho la tabella Anagrafica (id, Nome,Cognome,Citta_Nascita_id) e la tabella Citta (id,citta_id) concatenata con relazione hasOne.

Nell elenco della gridview visualizzo e ordino con correttezza i seguenti campi:

nomeCompleto che sarebbe nome e cognome concatenato, data_nascita e nomeCitNascita. Quello che non mi funziona è la ricerca. Non ho capito bene la sintassi da utilizzare tra addCondition(),andFilterWhere ecc ecc.

Ti incolla la mia funzion Search incompleta.

public function search($params)

{

    &#036;query = Anagrafica::find();


    &#036;query-&gt;joinWith(['cittaNascita']);


    &#036;dataProvider = new ActiveDataProvider(['query' =&gt; &#036;query,]);


    &#036;dataProvider-&gt;setSort([


                            'attributes' =&gt; [


                                            'data_nascita', 


                                            'nomeCompleto' =&gt; [


                                                                'asc' =&gt; ['cognome' =&gt; SORT_ASC, 'nome' =&gt; SORT_ASC],


                                                                'desc' =&gt; ['cognome' =&gt; SORT_DESC, 'nome' =&gt; SORT_DESC],


                                                                'default' =&gt; SORT_ASC


                                                               ],


                                            'nomeCitNascita' =&gt; [


                                                                'asc' =&gt; ['citta.citta' =&gt; SORT_ASC],


                                                                'desc' =&gt; ['citta.citta' =&gt; SORT_DESC],


                                                                ]


                                             ]


                        ]);





if (&#33;(&#036;this-&gt;load(&#036;params) &amp;&amp; &#036;this-&gt;validate())) 


    {


    


    return &#036;dataProvider;


    }











&#036;query-&gt;andWhere('cognome LIKE &quot;%' . &#036;this-&gt;nomeCompleto . '%&quot; ' .


    'OR nome LIKE &quot;%' . &#036;this-&gt;nomeCompleto . '%&quot;'


)

andWhere(‘citta.citta LIKE "%’ . $this->nomeCittaNascita. '%" ')

andWhere(‘data_nascita ="’ . $this->data_nascita . ‘"’);

return $dataProvider;

Sorry ma, pensavo ti riferissi a Yii 1.1.x ed i consigli erano in quel senso. Non ho ancora usato Yii2