Problema con camel back notation

Utilizziamo da qualche giorno YII e abbiamo notato un problema.

Abbiamo utilizzato una notazione per le tabelle del tipo "NomeTabella".

Arrivati però al punto di fare una chiamata al DB servendoci del sistema fornito da Yii, ci siamo accorti di un possibile problema che forse potrebbe risultare penalizzante.

Questa è la chiamata che abbiamo scritto:

$sql = "SELECT * FROM ".Livelli::tableName()." WHERE(idLivelloUtente={$idLivelloUtente})";

$livelloUtente = Yii::app()->db->createCommand($sql)->queryRow();

Otteniamo il seguente errore:

CDbCommand failed to execute the SQL statement: SQLSTATE[42703]: Undefined column: 7 ERROR: column "livelloutente" does not exist at character 8. The SQL statement executed was: SELECT livelloUtente FROM "LivelliUtente" "t" WHERE (idLivelloUtente=1)

Per farla breve, Yii forza i tablename affinché risultino in minuscolo.

La funzione è dentro il file ModelCommand.php

protected function generateRelationName($tableName, $fkName, $multiple)


{


if(strcasecmp(substr($fkName,-2),'id')===0 && strcasecmp($fkName,'id'))


$relationName=rtrim(substr($fkName, 0, -2),'_');


else


$relationName=$fkName;


$relationName[0]=strtolower($relationName);


$rawName=$relationName;


if($multiple)


$relationName=$this->pluralize($relationName);


$table=$this->_schema->getTable($tableName);


$i=0;


while(isset($table->columns[$relationName]))


$relationName=$rawName.($i++);


return $relationName;


}

Per noi questo è un problema in quanto sia i nomi delle tabelle che i nomi dei campi sono scritti con camel-back notation.

Avete per caso avuto modo di incontrare questo problema e quindi trovare una soluzione?

Grazie.

Pietro

Senza leggere tutto il messaggio: come mai non avete usato il model di Yii ed avete scritto sql direttamente?

Hai fatoo la stesa domanda nel forum inglese… ti ho gia risposto li…

E mi sa che l’ha rifatta di nuovo qui nel forum italiano… sbaglio?

Si ho postato due volte lo stesso messaggio. :rolleyes:

Non conosco ancora bene il framework; non capisco perché YII forza in minuscolo nome tabella e campi.

Ho provato ad applicare quanto ricevuto con i suggerimenti riveuti ma senza successo.

Grazie