Question

Je suis censé construire des applications Django, qui vous permettent d'administrer plusieurs sites à travers un back-end. Le cadre de contrib.sites est tout à fait parfait pour mes besoins. Je peux exécuter plusieurs instances de manage.py avec des paramètres différents pour chaque site; mais comment devrait django de beaucoup d'administration avec des paramètres différents pour différents sites, par exemple. si elles ont des ensembles de langues, une autre langue (par défaut)? Donc, il y a un problème s à face si vous devez travailler sur des objets provenant de différents sites en un seul administrateur ...

Je pense que settings.ADMIN_FOR est censé être très utile pour les cas comme celui-ci, mais Theres guère de documentation à ce sujet et je pense que ce n'est pas vraiment utilisé dans la version Django réelle (?).

Alors toutes les idées / solutions sont les bienvenus et très apprécié! Merci beaucoup ...

Était-ce utile?

La solution

Il y a un vieux blog par James Bennet qui pourrait être utile:

  
      
  1. Créer un nouvel objet du site dans votre admin pour chaque domaine, et de mettre l'identifiant de ce site dans son fichier de paramètres comme SITE_ID si Django sait quel site dans la base de données correspond à ce fichier de paramètres.
  2.   
  3. Dans le fichier de paramètres pour votre site d'origine (l'un avec id 1), ajoutez les fichiers de configuration des autres sites au réglage de ADMIN_FOR, de laisser Django savoir que celui-instance de l'application d'administration se chargera de tous les sites.
  4.   

Comme documenté ADMIN_FOR (pour lequel je ne peux pas le lien post) devrait être un tuple de paramètres des modules beaucoup comme INSTALED_APPS est un tuple de django application des modules.

Notez que blog est de 2006 donc il utilise un peu API obsolète.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top