J'ai quelques modules avec un chevauchement de certaines fonctionnalités. Conformément à DRY, je voudrais déménager à un autre endroit, donc j'aurai moins de code à maintenir. Où est le meilleur endroit pour faire cela? Si je fais juste un module (et en fais une dépendance de ceux qui en ont besoin), serai-je garanti que les constantes, fonctions et variables qui y sont définies seront toujours disponibles?Drupal6: Où conserver les fonctions/constantes nécessaires entre plusieurs modules?
1
A
Répondre
0
Oui c'est une bonne méthode. Je crée habituellement un module appelé "commun" avec une structure de fichier comme:
common
common.module //include all the inc files here
common.date.inc //all functions regarding date/time/etc.
common.text.inc //all functions regarding text
common.foo.inc
...
common.js //common javascript stuff, namespacing, etc.
Je nomme les fonctions comme ie.
date_unixtime_to_age()
et non
common_date_unixtime_to_age()
sur convience, mais seulement pour ce module. Tous les autres modules du format I comme
modulename_moduleincfile_functionname()
Les constantes sont correctes, mais essayez d'éviter d'encombrer l'espace de noms global avec des variables.
0
Voici comment je l'ai fait dans le passé. Cela fonctionne bien, le seul problème que j'ai eu est que parfois j'ai besoin de tweak my utility module's weight (with the Utility module) donc il est inclus avant les modules qui en dépendent.
Questions connexes
- 1. Diviser les modules F # entre plusieurs fichiers
- 2. Où mettre les données nécessaires dans plusieurs vues partielles
- 3. La communication entre les modules
- 4. ASP.net MVC: Où conserver les données d'application?
- 5. Comment puis-je dire à CPAN.pm où trouver les modules?
- 6. Où les applications multiplates-formes doivent-elles conserver leurs données?
- 7. Résolution de la dépendance en python entre les modules
- 8. OCaml: Définir les modules
- 9. Comment conserver l'état entre les demandes dans AppEngine (Python)?
- 10. Visual Studio Conserver la session entre les reconstructions etc
- 11. Comment conserver les alias dans plusieurs sessions shell?
- 12. Structuration d'une application Silverlight avec plusieurs modules
- 13. Où dois-je conserver les données de base et les méthodes de commodité?
- 14. Hérite d'une classe sur plusieurs modules?
- 15. Problème avec les modules Python
- 16. Les fichiers resx sont-ils nécessaires?
- 17. analyseur CSS + générateur XHTML, les conseils nécessaires
- 18. Firefox: Si les vérifications orthographiques sont nécessaires?
- 19. Fournir les données nécessaires pour QTMovie
- 20. Partage de FlowDocuments entre plusieurs RichTextBoxes
- 21. Où conserver le code du gestionnaire d'événements dans les objets d'espace de noms ou les fermetures?
- 22. Différence entre composants, modules, extensions et plugins dans Joomla
- 23. Partage d'une page entre des modules dans ASP.NET
- 24. Quelle est la meilleure façon de définir les dépendances entre plusieurs fichiers de construction ant?
- 25. Comment utiliser les modules avec Zend_Application?
- 26. Comment utiliser les modules EXSLT dans XMLSpy?
- 27. Excluant les méthodes des modules GWT
- 28. rails moyenne entre plusieurs modèles
- 29. Comment déployer l'autorisation entre plusieurs applications cakephp?
- 30. Maven: appliquer Plugin uniquement à l'un de plusieurs modules
ok. N'y a-t-il pas moyen d'inclure uniquement les fichiers .inc s'ils sont nécessaires? –
Eh bien, en général, vous voulez que vos fonctions communes soient toujours disponibles et que les frais généraux soient insignifiants. Dans les autres modules, vous pouvez utiliser le paramètre "fichier" de hook_menu() pour inclure un fichier par URL. Voir http://api.drupal.org/api/function/hook_menu. –