Yılında Zend Framework Quickstart, Tablo Veri Ağ Geçidi desen Zend_Db_Table_Abstract
uzatmak modellerden bir değişiklik olmamıştır.
Şahsen, ben bu model ile çok deneyim olmadı ve ben bu büyük olasılıkla eski yol yerine kullanıldı gerektiğini işitme tutmak.
A short example from the quickstart:
Old way:
class Default_Model_Guestbook extends Zend_Db_Table_Abstract
{
protected $_name = 'tablename';
// do stuff
}
New way:
// The actual model
class Default_Model_Guestbook
{
protected $_comment;
protected $_created;
protected $_poster;
// list continues with all columns
}
// Dbtable for this model
class Default_Model_DbTable_Guestbook extends Zend_Db_Table_Abstract
{
/** Table name */
protected $_name = 'guestbook';
}
// Mapper
class Default_Model_GuestbookMapper
{
public function save($model);
public function find($id, $model);
public function fetchAll();
}
Programlama bu tarzı ile benim eksik deneyim, ben zor bu ikinci yoldan gerçek yararlarını kavramak bulabilirsiniz; Ben bu yöntemi teoride kolay başka bir veritabanı platformuna geçiş yapmak gerekir mümkün olduğunca gerçek mantık, veritabanını ayıran anlıyorum. Ancak, gerçekten ben çalışıyorum herhangi bir proje üzerinde bu olay görmüyorum.
Orada neredeyse hiç şüphesiz ben bir şey bakan olduğumu, bu yüzden ben tavsiye duymak isteriz.
The question:
Could someone please explain to me why (or if) the latter is better practice? strong>
Should I switch from the old way to the new way or are there still proper reasons for sticking with models that represent database tables? strong>
Şimdiden teşekkürler.