Frage

Ich soll einige Django apps bauen, dass Sie mehrere Websites durch einen Backend verwalten lassen. Der contrib.sites Rahmen ist ziemlich perfekt für meine Zwecke. Ich kann für jeden Standort mehrere Instanzen von manage.py mit unterschiedlichen Einstellungen laufen; aber wie sollte den Admin-Deal mit verschiedenen Einstellungen für verschiedene Websites, zB django. wenn sie unterschiedliche Sätze von Sprachen haben, eine andere (Standard) Sprache? So gibt es einige Probleme s zu Gesicht, wenn Sie die Arbeit an Objekten von verschiedenen Standorten in einem kommendes Admin ...

ich denke, settings.ADMIN_FOR soll für Fälle wie diese sehr hilfreich sein, aber Theres kaum eine Dokumentation darüber, und ich denke, es ist wirklich nicht in der eigentlichen Django-Version verwendet (?).

So irgendwelche Ideen / Lösungen sind willkommen und zu schätzen! Vielen Dank ...

War es hilfreich?

Lösung

Es gibt eine alte Blog-Post von James Bennet die möglicherweise hilfreich sein:

  1. Erstellen Sie ein neues Standortobjekt in Ihrem Admin für jede Domäne, und setzen Sie die ID dieser Website in die Einstellungsdatei als SITE_ID so Django weiß, welche Seite in der Datenbank entspricht dieser Einstellungsdatei.
  2. In der Einstellungsdatei für Ihre ursprüngliche Website (die mit ID 1), fügen Sie die Einstellungsdateien anderen Seiten der ADMIN_FOR Einstellung, lassen Django wissen, dass dies eine Instanz der Admin-Anwendung wird alle Websites behandeln.

Wie dokumentiert ADMIN_FOR (für die ich kann nicht Post-Link) sollte ein Tupel von Einstellungen Module viel wie INSTALED_APPS ist ein Tupel von django app Modulen.

Beachten Sie, dass Blog-Beitrag von 2006 ist so verwendet er ein wenig veraltet API.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top