🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.python
5 messages
5 total messages Started by ds Tue, 28 Sep 2010 14:57
Django i dwie domeny
#27690
Author: ds
Date: Tue, 28 Sep 2010 14:57
26 lines
1811 bytes
Robię sobie aplikacje w Django podpiętą do dwóch domen dajmy na to aaa.pl i 
bbb.pl. Obie domeny wskazują na to samo i jest ok (prawie). Przy dostępie do 
niektórych js z domeny aaa.pl nie mogę ich wywołać bo serwer widzi je jako 
js z domeny bbb.pl. Krzyczy (i słusznie) że tak nie można. I tutaj dwa 
pytania:

1. Jak to elegancko rozwiązać nie dublując plików?
2. Jak w kodzie sprawdzić czy ktoś jest na aaa.pl czy na bbb.pl. Różnica 
będzie nieznaczna (w treściach) ale jednak będzie

Zależy mi na tym aby mieć "wszystko w jednym kawałku" (w ostateczności media 
żeby były jedne) i w zależności od tego z jakiej domeny ktoś przyjdzie, 
takie dane będzie dostawał.

Dziękuję z góry z pomoc

PS. Da się wyłączyć w panelu admina guziki zapisz i dodaj/zapisz/usuń bez 
pisania własnego template? Bo akcje mogę i owszem, mogę też powielić pasek z 
w/w guzikami na górę itp/itd ale "zakryć" ich nie mogę.

Mam w bazie tabelę z pozycjami których nie należy usuwać, nie należy dodawać 
nowych, trzeba tylko edytować istniejące.

-- 
Pozdrawiam
ds
Re: Django i dwie domeny
#27692
Author: Adam Przybyla
Date: Wed, 29 Sep 2010 07:50
28 lines
2209 bytes
ds <adres@email.pl> wrote:
> Robię sobie aplikacje w Django podpiętą do dwóch domen dajmy na to aaa.pl i 
> bbb.pl. Obie domeny wskazują na to samo i jest ok (prawie). Przy dostępie do 
> niektórych js z domeny aaa.pl nie mogę ich wywołać bo serwer widzi je jako 
> js z domeny bbb.pl. Krzyczy (i słusznie) że tak nie można. I tutaj dwa 
> pytania:
> 
> 1. Jak to elegancko rozwiązać nie dublując plików?
> 2. Jak w kodzie sprawdzić czy ktoś jest na aaa.pl czy na bbb.pl. Różnica 
> będzie nieznaczna (w treściach) ale jednak będzie
> 
> Zależy mi na tym aby mieć "wszystko w jednym kawałku" (w ostateczności media 
> żeby były jedne) i w zależności od tego z jakiej domeny ktoś przyjdzie, 
> takie dane będzie dostawał.
> 
> Dziękuję z góry z pomoc
> 
> PS. Da się wyłączyć w panelu admina guziki zapisz i dodaj/zapisz/usuń bez 
> pisania własnego template? Bo akcje mogę i owszem, mogę też powielić pasek z 
> w/w guzikami na górę itp/itd ale "zakryć" ich nie mogę.
> 
> Mam w bazie tabelę z pozycjami których nie należy usuwać, nie należy dodawać 
> nowych, trzeba tylko edytować istniejące.
	... hmm, wiesz, admin jest dobry, ale niektore rzeczy wymagaja wiekszej 
zmiany. Nie ma do tego pol w menadzerze. A co do kilku domen:
http://djangosnippets.org/snippets/1509/
Z powazaniem
								Adam Przybyla
Re: Django i dwie domeny
#27691
Author: mrk
Date: Wed, 29 Sep 2010 13:17
26 lines
2151 bytes
On 28 Wrz, 16:57, ds <ad...@email.pl> wrote:
>  Przy dostępie do
> niektórych js z domeny aaa.pl nie mogę ich wywołać bo serwer widzi je jako
> js z domeny bbb.pl. Krzyczy (i słusznie) że tak nie można. I tutaj dwa
> pytania:
>
> 1. Jak to elegancko rozwiązać nie dublując plików?

A po co podawać w ścieżkach domenę ?
podawaj ścieżki względne lub bezwzględne (zaczynające się od "/")

> 2. Jak w kodzie sprawdzić czy ktoś jest na aaa.pl czy na bbb.pl. Różnica
> będzie nieznaczna (w treściach) ale jednak będzie

request.get_host() zwraca Ci nazwę hosta:
http://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.get_host

> PS. Da się wyłączyć w panelu admina guziki zapisz i dodaj/zapisz/usuń bez
> pisania własnego template?

Ja to robiłem podstawiając własny template, innej metody nie
znalazłem.

Pozdrawiam
--
mrk
Re: Django i dwie domeny
#27693
Author: Darek
Date: Thu, 30 Sep 2010 20:31
39 lines
2853 bytes
On 28 Wrz, 16:57, ds <ad...@email.pl> wrote:
> Robię sobie aplikacje w Django podpiętą do dwóch domen dajmy na to aaa.pl i
> bbb.pl. Obie domeny wskazują na to samo i jest ok (prawie). Przy dostępie do
> niektórych js z domeny aaa.pl nie mogę ich wywołać bo serwer widzi je jako
> js z domeny bbb.pl. Krzyczy (i słusznie) że tak nie można. I tutaj dwa
> pytania:
>
> 1. Jak to elegancko rozwiązać nie dublując plików?
> 2. Jak w kodzie sprawdzić czy ktoś jest na aaa.pl czy na bbb.pl. Różnica
> będzie nieznaczna (w treściach) ale jednak będzie
>
> Zależy mi na tym aby mieć "wszystko w jednym kawałku" (w ostateczności media
> żeby były jedne) i w zależności od tego z jakiej domeny ktoś przyjdzie,
> takie dane będzie dostawał.

Da się to ładnie rozwiązać i nawet Django Ci w tym pomaga
udostępniając Site framework http://docs.djangoproject.com/en/dev/ref/contrib/sites/

Zmodyfikuj konfigurację serwera - dla aaa.pl ustaw zmienną
środowiskową DJANGO_SETTINGS_MODULE na settings_aaa.py, a dla bbb.pl
na settings_bbb.py

settings_aaa.py i settings_bbb.py importują globalny settings.py, ale
zmieniają jedną zmienną mianowicie SITE_ID (która wskazuje obiekt
danej domeny w Site).

Przy takim rozwiązaniu nie potrzebujesz żadnych dodatkowych rozwiązań/
pluginów/snippetów. Po prostu robisz:

>>>current_site = Site.objects.get_current()
>>>print current_site.domain # dla domeny aaa.pl
aaa.pl
>>>print current_site.domain # dla domeny bbb.pl
bbb.pl

W ustawieniach serwera również możesz wskazywać na folder statycznych
plików w zależności od domeny, np: media_aaa i media_bbb. W tych
folderach znajdą się jedynie pliki różne dla obu domen, a resztę można
wrzucić w postaci symlinka.
Re: Django i dwie domeny
#27694
Author: ds
Date: Fri, 01 Oct 2010 08:17
7 lines
823 bytes
ds wrote:

Dziękuję za wszystkie odpowiedzi, teraz wszystko narazie ok.

-- 
Pozdrawiam
ds
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads