Nehmen wir an, ich habe eine Tabelle mit Benutzer. Jede Zeile in dieser Tabelle ist somit ein Benutzer. Der wichtige Teil hier ist die Plural vs Singularform.Ein "Problem" mit den Namenskonventionen des Zend Framework Autoloaders umgehen
Nun schauen wir uns an die wir Modelle für diese in Zend Framework einzurichten:
class Model_Users extends Zend_Db_Table_Abstract
{
protected $_name = 'users';
protected $_primary = 'user_id';
}
nun weiter, lassen Sie uns annehmen, dass wir ein anderes wollen Benutzer anderes Objekt als die Standard-Reihe am Zend_Db_Table
zurückgekehrt, aber wir möchten trotzdem seine Funktionalität behalten, einfach erweitern. Es wäre dann sinnvoll, zu implementieren und einen einzigen Benutzernamen wie:
class Model_User extends Zend_Db_Table_Row_Abstract
{
... Bunch of cool functions here :)
}
Wir haben dann protected $_rowClass = 'Model_User';
zum Model_Users
Klasse nur hinzufügen, und wir sind fertig ... Normalerweise dass würde der Fall sein, aber Es scheint hier ein Problem zu geben, wie Zend Framework die Klassen automatisch lädt. Da wir die Ordnerstruktur /defaut/models/foo.php
haben und die Klasse innerhalb dieser Model_Foo
benennen können. Der Ordner hat einen Pluralnamen, aber die Klasse hat einen Singular. Dies scheint ein Problem zu werden, wenn ich die oben genannte Struktur haben möchte. Seit Zend Framework scheint nicht in der Lage zu sein zwischen den UserModel.php
und UsersModel.php
zu unterscheiden.
So ist die Frage nach dieser langen und etwas poetischen Frage ist:
Gibt es eine Möglichkeit, dies zu umgehen ohne Starten enthält manuell bedienen?
Ich bin nicht 100% sicher, was Sie versuchen zu umgehen ... Ich werde versuchen, indem wir Ihnen ein Beispiel, wie ich ein Setup – gnarf