Thread View: pl.comp.lang.python
13 messages
13 total messages
Started by Stefan
Thu, 05 Aug 2010 13:13
django - gdzie ładować dodatkowe pluginy
Author: Stefan
Date: Thu, 05 Aug 2010 13:13
Date: Thu, 05 Aug 2010 13:13
5 lines
1323 bytes
1323 bytes
Mam mały dylemat, bowiem jak umieszczam w projekcie django jakiś dodatkowy kod, który np. robi mi miniaturki z obrazków, to umieszczam go w katalogu głównym aplikacji i potem importuje sobie tam gdzie chce. Czy jest jakiś katalog dedykowany dla dodatkowych "pluginów" w django, tak jak np. vendors w CakePHP?
Re: django - gdzie ładować dodatkowe pluginy
Author: Piotr Husiatynski
Date: Thu, 05 Aug 2010 16:49
Date: Thu, 05 Aug 2010 16:49
13 lines
1464 bytes
1464 bytes
Dnia 05.08.2010 Stefan <stefan.py@onet.pl> napisał/a: > Mam mały dylemat, bowiem jak umieszczam w projekcie django jakiś > dodatkowy kod, który np. robi mi miniaturki z obrazków, to umieszczam go > w katalogu głównym aplikacji i potem importuje sobie tam gdzie chce. Czy > jest jakiś katalog dedykowany dla dodatkowych "pluginów" w django, tak > jak np. vendors w CakePHP? Dobrym pomysłem jest rozbijać wszystko w Django na możliwie małe aplikacje. Taki moduł do skalowania obrazków, mimo że może nie mieć widoków ani modeli, też potraktowałbym jak osobną aplikację. -- Piotr Husiatyński
Re: django - gdzie ładować dodatkowe pluginy
Author: Sławek Tuleja
Date: Thu, 05 Aug 2010 19:07
Date: Thu, 05 Aug 2010 19:07
30 lines
2391 bytes
2391 bytes
On 5 Sie, 18:49, Piotr Husiatynski <hu...@gmail.com> wrote: > Dnia 05.08.2010 Stefan <stefan...@onet.pl> napisał/a: > > > Mam mały dylemat, bowiem jak umieszczam w projekcie django jakiś > > dodatkowy kod, który np. robi mi miniaturki z obrazków, to umieszczam go > > w katalogu głównym aplikacji i potem importuje sobie tam gdzie chce. Czy > > jest jakiś katalog dedykowany dla dodatkowych "pluginów" w django, tak > > jak np. vendors w CakePHP? > > Dobrym pomysłem jest rozbijać wszystko w Django na możliwie małe aplikacje. Taki > moduł do skalowania obrazków, mimo że może nie mieć widoków ani modeli, też > potraktowałbym jak osobną aplikację. > > -- > Piotr Husiatyński Stefan mozna rowniez stworzyc w katalogu glownym projektu, katalog: utils i tam wrzucac dodatkowe katalogi i pliki np: - katalog_glowny_projektu: - - - utils - - - - - - image - - - - - - text - - - - - - html oczywiscie ma byc to traktowane jako modul wiec w kazdym katalogu ma pojawic sie plik: __init__.py pozdrawiam
Re: django - gdzie ładować dodatkowe pluginy
Author: Marek Wywiał
Date: Thu, 05 Aug 2010 22:00
Date: Thu, 05 Aug 2010 22:00
24 lines
2438 bytes
2438 bytes
On 5 Sie, 15:13, Stefan <stefan...@onet.pl> wrote: > Mam mały dylemat, bowiem jak umieszczam w projekcie django jakiś > dodatkowy kod, który np. robi mi miniaturki z obrazków, to umieszczam go > w katalogu głównym aplikacji i potem importuje sobie tam gdzie chce. Czy > jest jakiś katalog dedykowany dla dodatkowych "pluginów" w django, tak > jak np. vendors w CakePHP? Jeżeli jest to plugin do django to tak jak napisano wcześniej, w katalogu projektu. Jeżeli są to dodatkowe biblioteki/skrypty, których używasz w django ale nie są one od niego zależne (np biblioteka graficzna, itp) to lepiej trzymać je obok projektu i łączyć w całość przy pomocy np virtualenv, lub dodatkowo buildout'a. Buildout posiada receptę dla django, która układa kod w katalogach * bin - kontrolery, np django (manage.py), test, pliki .fcgi i .wsgi (wygenerowane automatycznie) * eggs - paczki w formacie egg * parts - biblioteki w postaci kodów źródłowych * django_projekt - projekt django (nazwa wybrana w konfiguracji) tu jest przykładowa konfiguracja z jaką zaczynam pracę nad projektami: * http://github.com/onjin/django-buildout-template
Re: django - gdzie ładować dodatkowe pluginy
Author: konryd
Date: Fri, 06 Aug 2010 11:06
Date: Fri, 06 Aug 2010 11:06
41 lines
2883 bytes
2883 bytes
On 5 Sie, 21:07, Sławek Tuleja <slawek.tul...@gmail.com> wrote: > On 5 Sie, 18:49, Piotr Husiatynski <hu...@gmail.com> wrote: > > > Dnia 05.08.2010 Stefan <stefan...@onet.pl> napisał/a: > > > > Mam mały dylemat, bowiem jak umieszczam w projekcie django jakiś > > > dodatkowy kod, który np. robi mi miniaturki z obrazków, to umieszczam go > > > w katalogu głównym aplikacji i potem importuje sobie tam gdzie chce. Czy > > > jest jakiś katalog dedykowany dla dodatkowych "pluginów" w django, tak > > > jak np. vendors w CakePHP? > > > Dobrym pomysłem jest rozbijać wszystko w Django na możliwie małe aplikacje. Taki > > moduł do skalowania obrazków, mimo że może nie mieć widoków ani modeli, też > > potraktowałbym jak osobną aplikację. > > > -- > > Piotr Husiatyński > > Stefan > mozna rowniez stworzyc w katalogu glownym projektu, katalog: utils i > tam wrzucac dodatkowe katalogi i pliki np: > > - katalog_glowny_projektu: > - - - utils > - - - - - - image > - - - - - - text > - - - - - - html > > oczywiscie ma byc to traktowane jako modul wiec w kazdym katalogu ma > pojawic sie plik: __init__.py > Taki moduł dobrze jest jednak przedstawić django jako aplikację (dopisać do installed_apps). W ten sposób utrzymamy możliwość spójnego odpalania testów. Oczywiście, jeśli mowa o zewnętrznej bibliotece to instalujesz ją zgodnie z zasadami sztuki (python setup.py install / easy_install / pip install) - przy czym, jeśli tego jeszcze nie robisz, bardzo fajnym pomysłem jest skorzystanie z virtualenv. pozdrawiam, Konrad
Re: django - gdzie ładować dodatkowe pluginy
Author: konryd
Date: Fri, 06 Aug 2010 11:24
Date: Fri, 06 Aug 2010 11:24
16 lines
1887 bytes
1887 bytes
[OFF TOPIC] > tu jest przykładowa konfiguracja z jaką zaczynam pracę nad projektami: > *http://github.com/onjin/django-buildout-template 0 Wow, fajny projekt. Na pewno mi się to kiedyś przyda. Widzę, że pakujesz virtualenva do katalogu env. Też tak robiłem przed jakiś czas, ale niedawno nawrócono mnie (:P) na virtualenv w kropce. Co prawda dostajemy 3 katalogi (bin, lib, include) zamiast jednego, ale nie trzeba się martwić czy aktywowaliśmy środowisko, tylko wystarczy napisać bin/python (czy raczej bin/django do większości zastosowań) pozdrawiam, Konrad
Re: django - gdzie ładować dodatkowe pluginy
Author: Marek Wywiał
Date: Fri, 06 Aug 2010 13:04
Date: Fri, 06 Aug 2010 13:04
26 lines
2383 bytes
2383 bytes
On 6 Sie, 13:24, konryd <kon...@gmail.com> wrote: > [OFF TOPIC] > > > tu jest przykładowa konfiguracja z jaką zaczynam pracę nad projektami: > > *http://github.com/onjin/django-buildout-template > > 0 > Wow, fajny projekt. Na pewno mi się to kiedyś przyda. > > Widzę, że pakujesz virtualenva do katalogu env. Też tak robiłem przed > jakiś czas, ale niedawno nawrócono mnie (:P) na virtualenv w kropce. > Co prawda dostajemy 3 katalogi (bin, lib, include) zamiast jednego, > ale nie trzeba się martwić czy aktywowaliśmy środowisko, tylko > wystarczy napisać bin/python (czy raczej bin/django do większości > zastosowań) fajne, :) nie wpadłem na '.'; choć ostatnio zacząłem używać virtualenvwrapper + virtualenvwrapper.project i wszystkie env mam w ~/.venv skorelowane z katalogami projektów. env i tak nie jest wrzucany do repo, żyje tylko lokalnie dla danego build'a. ale . fajna :)
Re: django - gdzie ładować dodatkowe pluginy
Author: Stefan
Date: Thu, 12 Aug 2010 05:40
Date: Thu, 12 Aug 2010 05:40
3 lines
1360 bytes
1360 bytes
Widzę że w django każdy ma własny sposób na strukturę katalogów w projekcie, nie ma czegoś "uniwersalnego" jak w przypadku np. Ruby On Rails gdzie od początku wiadomo co i gdzie ma się znaleźć.
Re: django - gdzie ładować dodatkowe pluginy
Author: Sławek Tuleja
Date: Thu, 12 Aug 2010 08:12
Date: Thu, 12 Aug 2010 08:12
8 lines
1790 bytes
1790 bytes
On 12 Sie, 07:40, Stefan <stefan...@onet.pl> wrote: > Widzę że w django każdy ma własny sposób na strukturę katalogów w > projekcie, nie ma czegoś "uniwersalnego" jak w przypadku np. Ruby On > Rails gdzie od początku wiadomo co i gdzie ma się znaleźć. Tak, wedlug starej zasady python'a The Zen of Python: There should be one-- and preferably only one --obvious way to do it. ;)
Re: django - gdzie ładować dodatkowe pluginy
Author: Marek Wywiał
Date: Thu, 12 Aug 2010 21:47
Date: Thu, 12 Aug 2010 21:47
15 lines
2266 bytes
2266 bytes
On 12 Sie, 07:40, Stefan <stefan...@onet.pl> wrote: > Widzę że w django każdy ma własny sposób na strukturę katalogów w > projekcie, nie ma czegoś "uniwersalnego" jak w przypadku np. Ruby On > Rails gdzie od początku wiadomo co i gdzie ma się znaleźć. jeśli chodzi o strukturę aplikacji w django to jest ustalona, models.py, admin.py, templates/ templatetags/, itp. Same aplikacje mogą być integralną częścią projektu, lub zostać dostarczone przez osobną paczkę. Nie wiem czy Rails'y pozwalają uruchomić aplikację dostarczoną przez osobny gem - to by była analogia do podejścia w django/python. Ale na pewno biblioteka używana przez Railsy może być w osobnym gemie, zainstalowana per system lub per user czyli tez analogicznie w pythonie może to być paczka w systemie lub w virtualenv/buildout.
Re: django - gdzie ładować dodatkowe pluginy
Author: Michał Jędryka
Date: Fri, 13 Aug 2010 08:36
Date: Fri, 13 Aug 2010 08:36
10 lines
1711 bytes
1711 bytes
On 12 Sie, 01:40, Stefan <stefan...@onet.pl> wrote: > Widzę że w django każdy ma własny sposób na strukturę katalogów w > projekcie, nie ma czegoś "uniwersalnego" jak w przypadku np. Ruby On > Rails gdzie od początku wiadomo co i gdzie ma się znaleźć. Czyżby jakiś mały flamik się szykował? ;) Pozdrawiam MJ
Re: django - gdzie ładować dodatkowe pluginy
Author: konryd
Date: Fri, 13 Aug 2010 10:49
Date: Fri, 13 Aug 2010 10:49
33 lines
3099 bytes
3099 bytes
On 13 Sie, 10:36, Michał Jędryka <michal.jedr...@gmail.com> wrote: > On 12 Sie, 01:40, Stefan <stefan...@onet.pl> wrote: > > > Widzę że w django każdy ma własny sposób na strukturę katalogów w > > projekcie, nie ma czegoś "uniwersalnego" jak w przypadku np. Ruby On > > Rails gdzie od początku wiadomo co i gdzie ma się znaleźć. > > Czyżby jakiś mały flamik się szykował? ;) Proszę, nie. Rzeczywiście jest odczucie, że Railsy bardziej narzucają strukturę katalogów. Dokładnie opisują gdzie mają być modele, gdzie wido^H^H^Hkontrolery, gdzie testy (jednostkowe/funkcjonalne/ integracyjne) i gdzie szablony. Funkcjonalności niezależne (dajmy na to, obsługa OAuth) znajdują się albo w osobnych gemach albo w pluginach (które też mają ściśle określone miejsce w projekcie). Teraz Dajngo: określa gdzie mają być modele, ale nie mówi czy to ma być jeden plik, czy pakiet. Określa gdzie mają być testy, ale nie wnika w ich strukturę w żaden sposób (musi tylko być w stanie wyciągnąć TestCase'y z modułu). Django określa gdzie mają być dodatkowe bajery typu template_tagi, context_procesory, polecenia management. Django *prawie* nie określa położenia szablonów, bo zezwala na ułożenie ich pod lokacją określoną w settingsach, w katalogach aplikacji, czy gdzie sobie ktoś życzy. Konsekwecją tego jest fakt, że trzeba do tych settingsów zajrzeć żeby wiedzieć gdzie są htmle, ale robi się to raz. Oczywiście aplikacje django mogą korzystać z zewnętrznych bibliotek (PIL). Różnica sprowadza się do podejścia "jeden projekt z pluginami" kontra "garść aplikacji zebranych do kupy". Nie widzę zasadniczej przewagi któregoś z nich nad drugim.
Re: django - gdzie ładować dodatkowe pluginy
Author: Stefan
Date: Fri, 13 Aug 2010 11:04
Date: Fri, 13 Aug 2010 11:04
14 lines
2145 bytes
2145 bytes
W dniu 2010-08-13 10:36, Michał Jędryka pisze: > Czyżby jakiś mały flamik się szykował?;) Żaden flamik. Po prostu zastanawiał mnie fakt, gdzie ładować statyczne pliki (js, css, pics) bo gdy się odpala serwer testowy, no to trzeba zdefiniować ścieżkę do tych plików, chyba że chce się mieć katalog z plikami w tym samym katalogu co pliki aplikacji. No a właśnie w Railsach jest katalog public w którym się właśnie wszystkie te pliki umieszcza no i to jest niejako narzucone z góry. Btw nie jestem jakimś fanboyem, po prostu miałem naleciałości z Railsów no ale ostatnio zakochałem się w Pythonie i Django - stąd moje niejako tendencyjne pytania :)
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