2010-12-15 45 views
1

Si vous avez remarqué que les utilisateurs écrivent des méthodes personnalisées qui traitent de la récupération ou de l'insertion/mise à jour d'enregistrements dans db de deux manières: 1. Méthode statique 2. Méthodes non statiques (méthode objet).fonctions statiques ou non statiques dans les classes générées par doctrine, symfony 1.4?

exemple:

obtenir les enregistrements d'une table A:

getRecords statique de la fonction publique() {$ q = Doctrine_Query :: create ..... }

fonction publique getRecords() { $ q = Doctrine_Query :: create ..... }

Est-il possible d'écrire les méthodes personnalisées de manière "Méthode objet"? ne voient aucun point dedans.

Répondre

3

Si la fonction est utilisée pour récupérer plusieurs objets pour un contrôleur, elle doit figurer dans la classe de la table et être une méthode statique.

Si la fonction est utilisée pour récupérer des objets pour un autre objet de modèle et qu'elle est uniquement utilisée par les objets de modèle, elle doit être une méthode non statique sur la classe de modèle elle-même.

+1

Oui, c'est vrai, mais pourquoi le "ModelTable" findBy * ou d'autres méthodes ne sont pas statiques? – simple