장고 버전 확인 방법


547

우리 응용 프로그램 에는 PythonDjango 를 사용해야 합니다. 그래서 저는 두 가지 버전의 Python, 2.6과 2.7이 있습니다. 이제 장고를 설치했습니다. Django 성공 테스트를위한 샘플 애플리케이션을 실행할 수 있습니다. 그러나 Django가 2.6 또는 2.7 버전을 사용하는지 여부와 Django가 사용하는 모듈 버전은 어떻게 확인합니까?


49
최단 방법 -python3 -m django --version
아니 켓 딴

8
내 설치에서 python3이 인식되지 않습니다. 이것은 작동합니다 : python -m django --version
Antti A

답변:


672

Django 1.5는 Python 2.6.5 이상을 지원합니다.

Linux를 사용하고 있고 사용중인 Python 버전을 확인 python -V하려면 명령 행에서 실행 하십시오.

Django 버전을 확인하려면 Python 콘솔을 열고 다음을 입력하십시오.

>>> import django
>>> django.VERSION
(2, 0, 0, 'final', 0)

버전을 확인하기 전에 env로 뛰어 들고 그렇지 않으면 django라는 모듈이 없습니다.
EngineSense

380

기본적으로 bcoughlan의 답변 과 동일 하지만 실행 가능한 명령입니다.

$ python -c "import django; print(django.get_version())"
2.0

브래디 에머슨과 bcoughlan의 결합 : python -c "import django; print(django.VERSION)"반환 (1, 8, 5, 'final', 0)
데이비드 Gleba

python -c "import django; print(django.__version__)"대신 해야 합니다. 또한 '2.2.4'(반드시 호출get_version() ) 반환 하고 PEP 8에 정의되어 있기 때문에 대부분의 다른 라이브러리가 따르는 표준 입니다. Django 1.8
Boris

213

응용 프로그램을 설치 한 경우 :

$ django-admin.py version
2.0

2018 년 5 월 (이 답변을 다시 테스트 한 날짜)으로 2.0.1을 설치했지만 버전이 1.11.5로 표시됩니다. 그러나 >> django.VERSION파이썬 쉘에서 올바른 버전을 표시합니다
Alex Jolig

1
이것은 나를 위해 일했습니다 : 우분투 18.04, P 3.6 및 Django 2.2가있는 virtualenv
Carmine Tambascia

1
잘 했어
Phok Chanrithisak

97

Django 프로젝트 홈 디렉토리로 이동하여 다음을 수행하십시오.

./manage.py --version

53
>>> import django
>>> print(django.get_version())
1.6.1

IDLE (Python GUI)을 사용하고 있습니다.


41

pip 가 있다면 할 수도 있습니다.

핍 동결
Django를 포함한 모든 구성 요소 버전이 표시됩니다.

grep을 통해 파이프하여 Django 버전을 얻을 수 있습니다. 그건,

josh@villaroyale:~/code/djangosite$ pip freeze | grep Django
Django==1.4.3

36

대한 파이썬 :

import sys
sys.version

Django의 경우 (여기에서 다른 사람들이 언급했듯이) :

import django
django.get_version()

버전을 확인하는 것의 잠재적 인 문제는 버전이 업그레이드되어 코드가 오래되었다는 것입니다. '1.7'< '1.7.1'< '1.7.5'< '1.7.10'인지 확인하고 싶습니다. 마지막 비교에서 일반 문자열 비교는 실패합니다.

>>> '1.7.5' < '1.7.10'
False

해결책은 distutils의 StrictVersion 을 사용하는 것입니다 .

>>> from distutils.version import StrictVersion
>>> StrictVersion('1.7.5') < StrictVersion('1.7.10')
True

2
무엇 사용에 대한 django.VERSION이미 튜플로 오는? 나는 django.VERSION >= (1, 8)항상 의도 한대로 작동 할 것이라고 확신 합니다.
Flimm

31

두 가지 버전의 파이썬이 있다고 말하면 다른 가상 환경 (예 : venv) 또는 아마도 conda 환경에 있다고 가정 합니다 .

장고를 설치했을 때, 그것은 하나의 환경에서만 있었을 것입니다. 각 버전의 파이썬마다 하나씩 두 가지 버전의 장고가있을 수 있습니다.

Unix / Mac 터미널에서 다음과 같이 파이썬 버전을 확인할 수 있습니다.

$ python --version

소스를 알고 싶다면 :

$ which python

그리고 django의 버전을 확인하려면 :

$ python -m django --version

18

Django 버전을 얻는 방법에는 여러 가지가 있습니다. 요구 사항에 따라 다음 중 하나를 사용할 수 있습니다.

참고 : 가상 환경에서 작업하는 경우 파이썬 환경을로드하십시오.


터미널 명령

  1. python -m django --version
  2. django-admin --version 또는 django-admin.py version
  3. ./manage.py --version 또는 python manage.py --version
  4. pip freeze | grep Django
  5. python -c "import django; print(django.get_version())"
  6. python manage.py runserver --version

장고 쉘 명령

  1. import django django.get_version() 또는 django.VERSION
  2. from django.utils import version version.get_version() 또는 version.get_complete_version()
  3. import pkg_resources pkg_resources.get_distribution('django').version

(어떤 종류의 수정이 있거나 더 많은 관련 정보를 추가하려는 경우이 답변을 자유롭게 수정하십시오.)


10

Python 셸을 사용하여 확인하려면 다음을 수행하십시오.

>>>from django import get_version
>>> get_version()

단일 행으로 Unix / Linux 쉘에서 수행하려면

python -c 'import django; print(django.get_version())'

응용 프로그램을 개발 한 후에는 다음을 사용하여 버전을 직접 확인할 수 있습니다.

python manage.py runserver --version


6

Django는 PYTHONPATH 환경 변수로 지정된 Python 버전을 사용합니다. echo $PYTHONPATH쉘에서 사용할 버전을 결정할 수 있습니다.

Django가 사용하는 모듈 버전은 PYTHONPATH에 지정된 Python 버전으로 설치된 모듈 버전입니다.


5

pip listLINUX TERMINAL에서 실행 하고 목록에서 Django와 해당 버전을 찾으십시오.

pip freezeWindows의 cmd에서 실행


4

파이썬 없이도 할 수 있습니다. Django 디렉토리에 이것을 입력하십시오 :

cat __init__.py | grep VERSION

그리고 당신은 다음과 같은 것을 얻을 것입니다 :

VERSION = (1, 5, 5, 'final', 0)

1
이는 가치를 얻기 위해 가상 환경을 활성화하지 않거나 AWS Elastic Beanstalk와 같은 것을 사용하고 가상 환경을 활성화 할 수없는 경우에 유용합니다.
rjferguson

1
@rjferguson 당신은 pip freeze/ 를 수행하기 위해 env를 활성화 할 필요가 없습니다 python -c "import <module>; <module>.VERSION". 간단히 참조 /path/to/env/bin/python -c "<command>"하거나 pip를 설치 / 사용하려면 똑같은 것을 참조하십시오 /path/to/env/bin/pip freeze. 나는 항상 루트로 로그인하고 모든 응용 프로그램 코드가 www-data내가하는 것처럼 실행되고 sudo su www-data -c "/path/to/env/bin/pip install <module>"깜박 거리지 않을 때 항상 이것을 사용합니다 . (난이 약 2 년 후에 알고, 당신은 아마 지금 알고 -이 다음 사람을 위해 더)
하비에르 Buzzi

> 파이썬 -c >> 파이썬없이
알렉스 바박


4

장고 버전 또는 다른 패키지 버전

터미널 또는 명령 프롬프트를 엽니 다

유형

pip show django

또는

pip3 show django

모든 패키지 버전을 찾을 수 있습니다 ...
예제

pip show tensorflow

pip show numpy 

기타....


나는이 대답의 단순함이 가장 좋습니다. pip freeze패키지 묶음에 넣은 경우 추가 쓰레기를 보여줍니다.
DukeSilver


3

가장 파이썬적인 방법은 다음과 같습니다.

>>> import pkg_resources; 
>>> pkg_resources.get_distribution('django').version
'1.8.4'

이것은 setup.py에 직접 연결됩니다 : https://github.com/django/django/blob/master/setup.py#L37

ANY 패키지의 버전 번호를 얻는 가장 좋은 방법입니다!

또한있다 distutils

>>> from distutils.version import LooseVersion, StrictVersion
>>> LooseVersion("2.3.1") < LooseVersion("10.1.2")
True
>>> StrictVersion("2.3.1") < StrictVersion("10.1.2")
True
>>> StrictVersion("2.3.1") > StrictVersion("10.1.2")
False

에 관해서 python버전, 나는 @jamesdradbury에 동의

>>> import sys
>>> sys.version
'3.4.3 (default, Jul 13 2015, 12:18:23) \n[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)]'

모두 함께 묶기 :

>>> StrictVersion((sys.version.split(' ')[0])) > StrictVersion('2.6')
True

2

Django 버전을 비교하려면 django-nine(pip install django-nine)을 사용할 수 있습니다 . 예를 들어, 사용자 환경에 설치된 Django 버전이 1.7.4이면 다음과 같습니다.

from nine import versions

versions.DJANGO_1_7 # True
versions.DJANGO_LTE_1_7 # True
versions.DJANGO_GTE_1_7 # True
versions.DJANGO_GTE_1_8 # False
versions.DJANGO_GTE_1_4 # True
versions.DJANGO_LTE_1_6 # False


2

django 1.0 후에는이 작업을 수행 할 수 있습니다

$ django-admin --version
1.11.10

1

쉘 프롬프트에서 다음 명령을 실행하여 django 버전을 얻을 수 있습니다

python -m django-버전

Django가 설치되어 있으면 버전이 표시되어야합니다. 그렇지 않으면“django라는 모듈 없음”이라는 오류가 표시됩니다.


1

django를 가져온 다음 시스템에 설치된 django의 버전을 알기 위해 아래와 같이 print statement를 입력하십시오 :

>>> import django
>>> print(django.get_version())
2.1

1

Django 버전에서 지원되는 Python 버전

Django version     Python versions
1.0                2.3, 2.4, 2.5, 2.6
1.1                2.3, 2.4, 2.5, 2.6
1.2                2.4, 2.5, 2.6, 2.7
1.3                2.4, 2.5, 2.6, 2.7
1.4                2.5, 2.6, 2.7
1.5                2.6.5, 2.7 and 3.2.3, 3.3 (experimental)
1.6                2.6.5, 2.7 and 3.2.3, 3.3
1.11               2.7, 3.4, 3.5, 3.6, 3.7 (added in 1.11.17)
2.0                3.4, 3.5, 3.6, 3.7
2.1, 2.2           3.5, 3.6, 3.7

파이썬에서 장고를 볼 수 있는지 확인하려면 쉘에서 python을 입력하십시오. 그런 다음 Python 프롬프트에서 Django를 가져 오십시오.

>>> import django
>>> print(django.get_version())
2.1
>>> django.VERSION
(2, 1, 4, 'final', 0)

0

Django를 포함하여 설치된 모듈의 모든 버전을 보려면 간단히 입력 python -m django --version 하거나 입력 pip freeze하십시오.


이것이 다운 다운 될 이유가 없으며 가장 간결한 답변 중 하나입니다.
tfantina

이것이 왜 다운 보트입니까?
Azima
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.