ccnmtldjango

Screenshot Software:
ccnmtldjango
Mga detalye ng Software:
Bersyon: 1.2.0
I-upload ang petsa: 20 Feb 15
Nag-develop: Anders Pearson
Lisensya: Libre
Katanyagan: 4

Rating: 1.0/5 (Total Votes: 1)

ccnmtldjango ay isang Paste Template na ginagamit namin upang palitan ang standard django-admin.py utos startproject.
Ginagawa ang parehong mga pangunahing gawain ng pag-set up ng isang istraktura ng direktoryo para sa isang Django app, ngunit ito ay nadagdagan ipatupad ng maraming CCNMTL tiyak na pag-andar at configuration.
Ano ang nagbibigay ito para sa atin ay hindi na startproject:
- Django Hangin (a Django bridge sa central auth serbisyo Columbia - http://www.jasig.org/cas/deployments/columbia-university) ay kasama at na-configure bilang default kaya maaaring awtomatikong gamitin ang aming apps WIND para auth. Ibig sabihin, ang sinuman na may Columbia UNI bilang default magkakaroon ng isang account. Ang UNIs CCNMTL developer ay awtomatikong i-set up bilang superusers, at ang affil pangkat na CCNMTL staff ang lahat ay makakakuha ng awtomatikong nai-map sa mga tauhan. Ang mga ito ay pangkaraniwang kapaki-pakinabang na mga default para sa amin.
- Virtualenv at buto ng bungang-kahoy sa pag-setup sa pinagmulan tarballs bundle at bootstrappable, shebang manage.py ng set na gamitin ito. Isa lamang Tama ang sukat na ito ito sa aming isang-hakbang sa pag-deploy ng awtomatikong at containment diskarte.
- Sorl.thumbnail (isang madaling gamitin na taong maselang sa pananamit imahe thumbnailing library) ay kasama sa pamamagitan ng default
- Pinagana flatpages
- Hatiin ang mga setting para sa dev / mag-udyok
--Configure ng Apache / django.wsgi
- Sample Apache config para sa pag-setup mod_wsgi gamit ang Virtual na kapaligiran (ang lahat ng bagay ay naka-streamline sa gayon ay maaari lang namin symlink ang nabuong Apache config file sa aming mga production server / etc / Apache / mga site na naka-enable / directory at ito ay handa na upang)
- Dirs media para sa dev at mag-udyok-configure
- Kasama smartif (https://github.com/thraxil/django-smartif/tree/master)
- Template_utils kasama (http://code.google.com/p/django-template-utils/) pati na rin ang feedparser, kung saan ito ay nakasalalay sa feed para sa mga bagay-bagay
Kasama Django-typogrify (http://code.google.com/p/typogrify/) kasama smartypants.py (na ginagamit nito) -
- Kasama Django-bantay (https://github.com/dcramer/django-sentry) at naka-configure para sa aming pag-setup
- Kasama Django-munin (https://github.com/ccnmtl/django-munin)
- South ay kasama para sa mga paglilipat ng database
- Django-nakakainis ay kasama (na nais korender_to)
- Install Django-ilong at i-set up bilang pagsubok runner (magkano nicer!)
- SQLite in-memorya ng database na ginagamit para sa pagsusuri ng yunit
- Mga pagsubok timog awtomatikong nilaktawan sa ./manage.py pagsubok (nila)
- Idinagdag django_compressor at i-set up upang i-compress css sa produksyon
- Uuid.py
- Jquery (1.4.2, minified) kasama
- Hs.js
- Tabber.js
- Widget.js
- Tablesort.js
- Kailangan ng CSS para sa js aklatan sa itaas ay kasama sa site.css sa pamamagitan ng default
- Kasama base ng mga template
- Pinagana (at napatotohanan na may WIND para tlc) Django admin
- Restclient
- Httplib2
- Imageuploader
- Markdown ay kasama at pinagana
- Database-default sa postgresql (dahilan MySQL ay teh pagsuso)
- Middleware transaksyon pinagana bilang default (katiwalian dahilan data ay teh pagsuso)
- Timezone hanay
- Naka-off I18n (hindi namin sa kasamaang-palad monolingual walang kahulugan sa hindi pagbibigay ito.)
- PIL
- Psycopg2 (Nakuha ang mx.DateTime dependency nito)
- Gandang disenyo default na template na may kahaliling base template para sa layout na maramihang hanay.
Upang gamitin ang ccnmtldjango, kailangan mong python 2.6+, virtualenv, buto ng bungang-kahoy, at isang kamakailang setuptools naka-install sa iyong machine.
Una, kung hindi mo nai-install ccnmtldjango, gawin
& Nbsp; easy_install ccnmtldjango
Dapat itong awtomatikong hilahin sa kinakailangan dependency (lamang PasteScript, talaga).
Pagpapatakbo
& Nbsp; paster lumikha --list-template
Dapat kasama ccnmtldjango
Ngayon, upang quickstart isang proyekto Django, gawin
& Nbsp; paster lumikha --template = ccnmtldjango myprojectname
Dapat myprojectname pangalan ng isang module ng python (ibig sabihin, maliliit na titik, walang bantas, atbp). Ito ay lumikha ng isang direktoryo na tinatawag na myprojectname na may Django proyekto sa loob nito.
paster pa rin ay hindi gumawa ng anumang bagay na may pahintulot ng file, kaya kailangan pa rin namin upang mano-manong itakda ang ilang:
& Nbsp; cd myprojectname
& Nbsp; chmod 755 manage.py bootstrap.py
Hindi ko malaman kung ang isang paraan upang magsingit ng random na string sa code sa pamamagitan ng I-paste Template, kaya isang bagay na ccnmtldjango ay nawawala kumpara sa isang regular na Django startproject ay ang SECRET_KEY variable sa settings_shared.py ay laging ang parehong default. Iyon ay malinaw na hindi isang magandang ideya, kaya siguraduhin na baguhin na sa ilang iba pang mga random na string na maging natatangi sa iyong proyekto.
Ito ay marahil isang magandang punto upang suriin ang proyekto sa bersyon control.
Ginagamit namin ang containment para sa Django masyadong, na may virtualenv:
& Nbsp; ./ bootstrap.py
Iyon ay bubuo ng isang ve direktoryo na naglalaman ng isang virtualenv at nagkaroon ang lahat ng mga aklatan sa direktoryo kinakailangan / src naka-install sa ito (kabilang dito ang Django mismo). Ang ve hindi kailanman dapat na naka-check in sa direktoryo svn dahil ito ay nabuo. Kung kailangan mo ng iba pang mga aklatan para sa iyong application, bundle up ang mga ito bilang tarballs at drop ang mga ito sa mga pangangailangan / src / directory, idagdag ang mga ito sa mga kinakailangan / libs.txt o mga kinakailangan / apps.txt (depende sa kung ang mga ito ay regular na aklatan python o Django apps) pagkatapos-run muling ./bootstrap.py.
Tandaan na may virtualenv, hindi na kailangang i-activate ang isang kapaligiran. Sa halip, ang isang ve ay may bin direktoryo na naglalaman ng isang python executable. Kung gumagamit ka na sa halip na ang sistema ng python executable, ginagamit nito ang aklatan sa na virtualenv.
ccnmtldjango Ipinagpapalagay na ang iyong proyekto ay gumamit ng isang database postgresql na may parehong pangalan tulad ng sa iyong proyekto. Kaya, para sa aming halimbawa, nais mong gawin pagkatapos:
& Nbsp; createdb myprojectname
at ito ay ang lahat ng set upang gamitin ito:
& Nbsp; ./ manage.py syncdb
I-install ang mga talahanayan na Django pangangailangan para sa karaniwan apps (mga site, mga session, admin, flatpages, atbp) at mayroon kang lumikha ng isang user admin.
Ang ./manage.py syncdb awtomatikong nagse-set up ng "example.com" site. Ito dapat ay mapalitan ng domain ng iyong site (hal localhost: 8000) sa pamamagitan ng admin console. http: // localhost: 8000 / admin / site / site /. (Kung mahalaga ito para sa iyong application)
Ang iyong aplikasyon ay handa na upang patakbuhin ngayon:
& Nbsp; ./ manage.py runserver
ay magsisimula ng isang server sa http: // localhost: 8000 /. Pagpunta doon ay magbibigay sa iyo ng 404 dahil may wala sa mga application kung pa, ngunit dapat ay naa-access ang admin app (sa pamamagitan ng user account na iyong nilikha sa panahon ng syncdb, o sa pamamagitan ng WIND sa tlc mga gumagamit (o mga tiniyak sa listahan WIND_SUPERUSER_MAPPER_GROUPS sa settings_shared.py .) Kaya sige lang at mag-login sa http: // localhost: 8000 / admin /
Kahit na walang anumang mga tukoy na code application, flatpages ay kasama sa gayon ay maaari mong ilagay ang nilalaman sa web kaagad.
Mula sa puntong ito out, ito ay ang pangunahing pag-unlad Django. Makikita malamang na gusto mong gawin ang isang ./manage.py startapp upang lumikha ng iyong sariling mga application sa loob ng proyekto at iba pa.
Pagse-set up ng isang sariwang checkout
Sa unang pagkakataon na tingnan mo ang isang umiiral na proyekto ccnmtl-template mula svn / Git:
& Nbsp; ./ bootstrap.py
./manage.py runserver :
pagkakaiba mula sa isang karaniwang Django install
Malinaw, ng grupo ng mga aklatan at mga katulad naidagdag at naroon ang buong virtualenv bagay. Mayroong ilang mga pagkakaiba mula sa isang karaniwang proyekto Django (ibig sabihin, ang resulta ng django-admin.py startproject) na dapat ay awayre ng ring.
Una, ang mga setting ay na maghiwalay upang gawing mas madali dev at mag-udyok deployment upang i-configure. Ang isang regular na-install Django ay magkakaroon ng isa settings.py file na naglalaman ng lahat ng mga setting. Django mga developer ay karaniwang kopyahin na file setting at gumawa ng mga pagbabago kapag paganahin para sa produksyon. ccnmtldjango tumatagal ng husto ang mga katotohanan na setting ay lamang python code at maaaring ma-import at na-override. Kaya mayroon kaming settings_shared.py na naglalaman ng karamihan ng mga setting. settings.py (na dapat gamitin para sa pag-unlad) at settings_production.py pagkatapos ay i-import ang lahat mula sa mula sa settings_shared.py. settings_production.py pagkatapos ay i-o-override din ng anumang mga setting na dapat naiiba sa pag-deploy ng produksyon (karaniwan ay mga path sa mga template at mga media file).
TransactionMiddleware ay pinagana bilang default. Nangangahulugan ito na ang bawat kahilingan ng HTTP ay makakakuha ng isang transaksyon na gumawa o Rolls pabalik sa dulo ng kahilingan. Ang default na Django pag-setup para sa ilang kadahilanan ang mga bagay "autocommit" style kung saan ang bawat operasyon ng database ay tumatakbo sa sarili nitong transaksyon, independiyenteng ng kahilingan ng HTTP.
Ang iba pang mga malaking pagkakaiba na dapat malaman ay ang mga template direktoryo sa nangungunang antas. Standard pamamaraan Django ay upang magkaroon ng isang direktoryo ng mga template sa bawat application sa iyong proyekto na naglalaman ng mga template para sa application na iyon. ccnmtldjango ay ang direktoryo ng mga template nangungunang antas para sa ilang mga kadahilanan. Una, dahil paster ay lumilikha lamang ang antas ng proyekto na direktoryo at hindi sa mga direktoryo na application, ito ay ang tanging paraan upang magkaroon ito isama ang isang default na base.html, admin / login.html, pagpaparehistro / login.html at iba pa. Tulad lamang ang diskarte ng pagkakaroon ng isang direktoryo ng mga template ng proyekto sa antas ng, lalo na para sa template base.html din ako. Binibigyang-daan ka Django ng maramihang template na direktoryo at paghahanap sa pamamagitan ng mga ito sa isang mahuhulaang order, kaya maaari mong (at marahil ay dapat na) pa rin lumikha ng template direktoryo sa antas ng application, ilista ang mga ito sa TEMPLATE_DIRS mas maaga sa kanilang mga proyekto sa antas ng isa, at i-override ang anumang mga template na nais mo sa mga iyon.
I18N naka-off dahil ito ay medyo bihirang gagawin namin ang multi-lingual bagay-bagay at ito ay isang pagganap hit paganahin ito kung hindi ito ginagamit. . Kung kailangan mong gawin ang isang multi-lingual Django site, lamang paganahin itong muli at makakuha ng upang gumana

Mga Kinakailangan :

  • Python

Mga komento sa ccnmtldjango

Mga Komento hindi natagpuan
Magdagdag ng komento
I-sa mga imahe!