Sto diventando pazzo. Dopo diversi mesi di sviluppo con Yii, la scrittura di strutture AR piuttosto complesse, ecc.ecc, mi sono accorto di non aver capito NULLA!
Ho una richiesta findAll come la seguente:
$dealeravailabilityproducts = ProductAvailability::model()->dealeravailability($data->id)->findAll();
e ottengo questo errore:
CDbCommand ha riportato un errore nell'esecuzione della query SQL: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') AND (iddealer = 2)' at line 1. The SQL statement executed was: SELECT * FROM `md_productavailability` `t` WHERE (idproduct = ) AND (iddealer = 2)
Ma come è possibile? Nella mia classe AR ProductAvailability io da nessuna parte richiedo di avere il parametro idproduct definito!
// Parameterized named scopes
// Get product availability
public function dealeravailability($iddealer)
{
$this->getDbCriteria()->mergeWith(array(
'condition'=>'iddealer = ' . $iddealer,
));
return $this;
}
Cosa siavolo succede? Dove sbaglio?
Ciao.
Mauro