Salve,
qualcuno potrebbe gentilmente spiegarmi come usare
$this->addCondition
dalla guida in inglese e dai tutorial mi è apparso poco chiaro.
Grazie
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)
{
$query = Anagrafica::find();
$query->joinWith(['cittaNascita']);
$dataProvider = new ActiveDataProvider(['query' => $query,]);
$dataProvider->setSort([
'attributes' => [
'data_nascita',
'nomeCompleto' => [
'asc' => ['cognome' => SORT_ASC, 'nome' => SORT_ASC],
'desc' => ['cognome' => SORT_DESC, 'nome' => SORT_DESC],
'default' => SORT_ASC
],
'nomeCitNascita' => [
'asc' => ['citta.citta' => SORT_ASC],
'desc' => ['citta.citta' => SORT_DESC],
]
]
]);
if (!($this->load($params) && $this->validate()))
{
return $dataProvider;
}
$query->andWhere('cognome LIKE "%' . $this->nomeCompleto . '%" ' .
'OR nome LIKE "%' . $this->nomeCompleto . '%"'
)
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