Django for Python 3.x nasıl yükleyebilirim?


32

Django'yu şu komutla yükledim:

sudo apt-get install python-django

Ve 1.5.4-1ubuntu1 versiyonunu kurdu. Django belgeleri, sürüm 1.5'ten itibaren Django'nun Python 3'ü desteklediğini söylüyor. Ancak python 3 yorumlayıcısını çalıştırdığımda ve Django almayı denediğimde, böyle bir modül olmadığını söylüyor. Django'nun python3 sürümünü aramaya çalıştım, ancak böyle bir paket yok. Django'yu python3 üzerinde nasıl çalıştırabilirim? Manuel olarak yüklemek yerine ubuntu paketlerini kullanmayı tercih ederim.


1
Askubuntu.com/questions/666933/… Check out benim için ... :)

Yanıtlar:


38

pip3Sistem site paketlerine bir şeyler yüklemekten kaçınılmasını şiddetle tavsiye ederim . Bu tartışmaları daha önce yaptım ama size notları vereceğim:

  • Sistem güncellemeleri her şeyi bozuyor
  • Apt paketlerini kurmak pip yüklü şeylerin üzerine yazabilir
  • Sürüm çakışmaları
  • Dağıtım yükseltmeleri öngörülemeyen kaostur . Ciddi anlamda. Bunlara saç döktüm.

Kullanmayı şiddetle savunurdum virtualenv. Nereye gidecekseniz büyük bir acıdır, ancak bir kez ayarladıktan sonra tüm kontrolünüz altında tam bir Python ortamı vardır. Bu, daha fazla iş anlamına gelir (güncellemeleri kontrol etmek zorundasınız ve piphenüz orada gerçekten yardımcı olmuyor) ancak Ubuntu'nun ne yaptığı konusunda endişelenmenize gerek yok.

Her site için bir ortamım var (adı verilen alt dizinde oturuyorum venv). Bazı insanlar - ben de dahil olmak üzere - bir zamanlar - çevrelerini birden fazla site arasında paylaşmayı tercih ediyorlar. Güncelleme yayınlama açısından bakımı daha kolay buldum, ancak bazı siteler kırılgan olabilir veya eski sürümleri gerektirebilir ve tüm ortamı geri tutar. YMMV.

Bu yükleme açısından, sadece yüzüme tokat, virtualenvbiz kullanıma zorunda henüz Python 3 için paketlenmiş değildir pip3:

$ sudo pip3 install virtualenv
...

$ virtualenv-3.3 myenv
Using base prefix '/usr'
New python executable in myenv/bin/python3
Also creating executable in myenv/bin/python
Installing setuptools, pip...done.

$ source myenv/bin/activate  # This is important!

Bash PS1'iniz, (myenv)farklı bir ortamda bulunduğunuzu bildirmek için şimdi sıkılmalı . İşlerin doğru sürümlerinde olduğumuzu kontrol etmek için ortamı test edebiliriz (yeni başlayanlar için sistem sürümlerini kullanmıyorsunuz):

$ python --version
Python 3.3.2+
$ which python pip 
/home/oli/Desktop/myenv/bin/python
/home/oli/Desktop/myenv/bin/pip

Ve sonra sanki evrenin ustası gibisin. Artık kullanmak için kök pipgerekmez ve belirtmeniz gerekmez pip3. Sadece çok daha kolay.

$ pip install django umemcache
...

Bunu uwsgibarındırmak gibi bir şey kullanıyorsanız (gerekir), Python ortamının nerede yaşadığını söylemek için -H bayrağını (veya home config bağımsız değişkenini) kullanın.

Geliştirmeyi kolaylaştırmak için, virtualenvortamınızı otomatik olarak "bağlayabilirsiniz" . Orada birçok senaryo var ama bu benim. (Bu benim hayatımın dibinde yaşıyor ~/.bashrc:

export VENVDIR="/web"
export VENVDIR_VENV="$VENVDIR/venv"

venvcd() {
        wd=$(pwd)
        [[ $wd == $VENVDIR/* || $wd == $VENVDIR ]] && wasin=true || unset wasin

        builtin cd "$@"

        wd=$(pwd)
        if [[ $wd == $VENVDIR/* || $wd == $VENVDIR ]]; then
                source $VENVDIR_VENV/bin/activate
        else
                [ $wasin ] && deactivate
        fi
}
alias cd="venvcd"

cd .

Ben ne zaman cdiçine /web(bütün gelişim siteleri depolandığı yer), bu benim için VIRTUALENV takar. Tüm sitelerim için yalnızca bir ortama sahip olduğumu ve bu nedenle benzer bir şey yaparsanız bunun size uygun olacağını unutmayın. Orada benzer şeyler yapmanın birçok yolu .


18

Bunun nasıl yapılacağını anladım pip. İhtiyacım olduğu ortaya çıktı pip3:

sudo pip3 install Django

hile yaptım.

Pip3'ü şu şekilde edinmeniz gerekebilir:

sudo apt-get install python3-pip

3

Python3 için Django şimdi eklenmiştir. Yani basitçe bir terminal girin:

apt-get install python3-django


1
E: Unable to locate package python3-django
Jonathan,

1
Ubuntu 14.04 Trusty Tahr için müsait değil.
Anwar,

1
System-repos django kullanmanızı önermiyorum. Bir güncelleme yapılacaksa, kullandığınız işlevselliklerin bir kısmı güncellemeden sonra çalışmayabilir. Sanal-env yaklaşımını yukarıda gösterildiği gibi daha iyi kullanın.
0xAffe,

En yeni Debian'da (8, güncel) ve Django 1.7.11 (ki bu EOL!) Depolarda mevcut olan en yeni sürüm. Ubuntu'nun desteklenen bir sürümü var (1.8.7.). Debian'ın neden bu kadar geride olduğunu merak ediyorum.
Hydraxan14

3

Çocuklar Ubuntu / Debian'da Python 2.7 / 3.x sanal ortamlarını yönetmenin en kolay yolu olan virtualenvwrapper'ı kullanmanın kolay bir yolu var .

$ sudo apt-get install python3 virtualenvwrapper
$ mkvirtualenv <venv> -p python3
$ workon <venv> # sets into the virtualenv from any terminal.

İsteğe bağlı olarak --system-site-packagesgenel site paketlerini yeniden kullanmayı etkinleştirin .
virtualenv , hızlı bir şekilde başlamamıza yardımcı olmak için pip ve diğer python kurulum araçlarını yükler.

$ pip install Django
$ pip install -r requirements.txt
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.