Wo muss ich die domain für meine Django-Websites framework Seite, wenn ich nur eine haben?
Habe ich ein Django-Projekt für eine einfache blog - /forum-website, die ich Baue.
Ich bin mit dem syndication-feed framework, das scheint zum generieren der URLs für feed-Elemente anhand der domain der aktuellen site aus das Sites framework.
Ich war vorher nicht bewusst, das Sites framework. Mein Projekt ist nicht zu sein verwendet für mehrere Standorte, nur eine.
Was ich will zu tun ist, legen Sie die domain
- Eigenschaft der aktuellen Seite. Wo in meinem Django-Projekt sollte ich tun? Irgendwo in /settings.py?
Ah: eine Art Duplikat der stackoverflow.com/questions/3536123/...
InformationsquelleAutor Paul D. Waite | 2012-09-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn ich das richtig verstehe, Seiten-framework-Daten in der Datenbank gespeichert ist, so dass, wenn ich speichern möchte das ständig, ich denke, es ist angebracht, in einem
initial_data
- Befestigung.Feuerte ich die Django-shell, und Folgendes gemacht:
Ich ergriff dann nur diese Daten in der Kommandozeile:
Und klebte es in meinen bereits bestehenden
initial_data
Leuchte.example.com
, nichthttp://example.com/
ah, danke — ich habe aktualisiert das code-Beispiel entsprechend.
Muss ich meinem apache neu starten, um das update funktioniert.
# /etc/init.d/apache2 restart
InformationsquelleAutor Paul D. Waite
Den anderen Antworten vorschlagen, um manuell aktualisieren Sie die Website in der admin -, shell -, oder in Ihrem DB. Das ist eine schlechte Idee—es sollte automatisch sein.
Können Sie erstellen, migration, werden dies automatisch tun, wenn Sie führen Sie Ihre Migrationen, so können Sie sicher sein, es ist immer angewendet (zum Beispiel, wenn Sie in der Produktionsumgebung bereitstellen). Dies wird auch empfohlen, in der Dokumentation, aber es spielt keine Liste mit Anweisungen.
Führen Sie zuerst
./manage.py makemigrations --empty myapp
erstellen Sie einen leeren migration. Dann fügen Sie den folgenden code:Stellen Sie sicher, dass Sie festgelegt haben
SITE_ID
in Ihren Einstellungen und benennen Sie die Datei etwas passendes, wieupdate_site_details.py
. Dann laufen./manage.py migrate
um die änderungen zu übernehmen 🙂InformationsquelleAutor dspacejs
Können Sie ändern die Website-Eintrag in der Datenbank manuell. Navigieren Sie zu der Tabelle namens " django_site'. Dann sollten Sie nur einen Eintrag (Zeile). Sie möchten, ändern Sie das Feld (Spalte) namens " domain'.
InformationsquelleAutor Kurtis
Können Sie es ändern mit django-admin-Seite.
Gehen Sie einfach auf
127.0.0.1:8000/admin/sites/
InformationsquelleAutor Juano