Ben yakında üretimde kullanmaya başlayacak gibi Zend Framework ile ilgili kendimi belgelemek başladım. Ben :) kullanmak ve modelleri ile çalışmaya başlayana kadar her şey gayet iyi çalışıyordu.
Zend tavsiyelerine dayalı modeller için varsayılan konumu, application/models/DbTable
, tüm modeller bu yere atılmış olacaktır nerede Application_Model_DbTable_Actors
gibi bir model isim beni zorlamasıdır. Benim için, bu model için çok uzun bir isim ve kullanmak için bir kolay değildir.
Ben almak istiyorum dizin yapısı şöyle:
application/
models/
actors/
ActorsMapper.php
Actor.php
books/
BooksMapper.php
Book.php
vb
Yani tüm modelleri models
dizini altında bulunan, ancak kendi dizinleri gruplandırılmış olacak.
Her sınıf için adlandırma (Bu Zend_Db_Table
uzanacaktır iki ya da Zend_Db_Row
) ActorsMapper
ya da Actor
olmalıdır.
Ben gibi bir şey kullanarak bir model örneğini eğer benim denetleyicileri $actors = new ActorsMapper()
bir Fatal error: Class not found
alacak ve neden ben bu ile yardım için soruyorum o farkındayım.
Ben include_path benim models
dizin eklemek için çalıştı bu sorunu çözmek için:
İlk deneyin
includePaths.models = APPLICATION_PATH "/models"
application.ini eklendi
ama bu bile dahil yoluna eklemek değil
İkinci deneyin:
explicitely added the path using
set_include_path(implode(PATH_SEPARATOR, array( realpath(APPLICATION_PATH . '/../library'), realpath(APPLICATION_PATH . '/models'), get_include_path(), )));
Bu dahil olanlar arasında bu yolu ekler bile ama hata hala devam.
Ben official documentation Zend_Db_Table
içinde modellerinin bu adlandırma gördüm, ama ben onları hakklı ilgili bir şey bulamadı.
Herhangi bir çözüm için hepinize teşekkür ederim.
P.S. Zend Framework sürüm 1.11.1 olduğunu