2011-12-17 8 views
0

私は、次のzendframeworkモデルクラスを持っているZend_Db_Table_Rowデータベーステーブルの宣言方法は?

class Application_Model_DbTable_Mobile extends Zend_Db_Table_Abstract { 

protected $_name = 'mobile'; 
protected $_rowClass = 'Application_Model_Mobile'; 
} 

オブジェクトクラス

class Application_Model_Mobile extends Zend_Db_Table_Row_Abstract { 



} 

しかし、私は、アプリケーションModel_Mobile oから直接保存しようとするとどのようにできたことは誤り

$m = new Application_Model_Mobile(); 
$m->name = 'Mobile Test'; 
$m->save(); 

Application error 
Exception information: 

Message: Specified column "chave" is not in the row 

を返します。 Application_Model_Celularにモバイルテーブルがありますか?

答えて

0

試してみてください(あなたが完璧な理由を持っているかもしれないが)

class Application_Model_Mobile extends Zend_Db_Table_Row_Abstract { 
    protected $_tableClass = 'Application_Model_DbTable_Mobile'; 


} 

は、通常は、この方法はZend_Dbを使用することはありません。変数$ _tableClassはまだその一つの方法だ場合:(うん、私はそれのように使用することができます動作しません宣言し

$table = new Application_Model_DbTable_Mobile(); 
$m = $table->createRow(); 
$m->name = 'Mobile Test'; 
$m->save(); 
+0

:これを行うための標準的な方法はApplication_Model_Mobileクラスを定義し、同じようにコードを記述しないことであろう。 – dextervip

関連する問題