如何检查Django版本

mah*_*024 499 python django

我必须在我们的应用程序中使用PythonDjango.所以我有两个版本的Python,2.6和2.7.现在我已经安装了Django.我可以运行示例应用程序来测试Django的成功.但是我如何确定Django是使用2.6还是2.7版本以及Django使用的是什么版本的模块?

bco*_*lan 612

Django 1.5支持Python 2.6.5及更高版本.

如果您在Linux下并想要检查您正在使用的Python版本,请从命令行运行python -V.

如果要检查Django版本,请打开Python控制台并键入

>>> import django
>>> django.VERSION
(2, 0, 0, 'final', 0)
Run Code Online (Sandbox Code Playgroud)

  • 在检查版本之前先深入一下 env,否则没有名为 django 的模块。 (2认同)

Bra*_*son 362

基本上与bcoughlan的答案相同,但这里它是一个可执行命令:

$ python -c "import django; print(django.get_version())"
2.0
Run Code Online (Sandbox Code Playgroud)


jus*_*sti 192

如果您已安装该应用程序:

$ django-admin.py version
2.0
Run Code Online (Sandbox Code Playgroud)

  • 同样,`python manage.py version`也可以. (11认同)
  • 这对我有用:ubuntu 18.04、virtualenv with P 3.6 和 Django 2.2 (2认同)

nik*_*ik7 91

转到Django项目主目录并执行:

./manage.py --version
Run Code Online (Sandbox Code Playgroud)


小智 49

>>> import django
>>> print(django.get_version())
1.6.1
Run Code Online (Sandbox Code Playgroud)

我正在使用IDLE(Python GUI).


Jos*_*own 36

如果你有点子,你也可以做

pip freeze
它会显示你的Django版本.

你可以通过grep管道来获得Django版本.那是,

josh@villaroyale:~/code/djangosite$ pip freeze | grep Django
Django==1.4.3
Run Code Online (Sandbox Code Playgroud)


Jam*_*ury 33

对于Python:

import sys
sys.version
Run Code Online (Sandbox Code Playgroud)

对于Django(正如其他人所说):

import django
django.get_version()
Run Code Online (Sandbox Code Playgroud)

简单地检查版本的潜在问题是版本升级了,因此代码可能会过时.你想确保'1.7'<'1.7.1'<'1.7.5'<'1.7.10'.在上一次比较中,正常的字符串比较会失败:

>>> '1.7.5' < '1.7.10'
False
Run Code Online (Sandbox Code Playgroud)

解决方案是使用来自distutils的StrictVersion.

>>> from distutils.version import StrictVersion
>>> StrictVersion('1.7.5') < StrictVersion('1.7.10')
True
Run Code Online (Sandbox Code Playgroud)

  • 使用已经作为元组出现的 `django.VERSION` 怎么样?我很确定做 `django.VERSION &gt;= (1, 8)` 将始终按预期工作。 (4认同)

Ans*_*sht 33

在命令提示符处键入以下内容:

django-admin.py version
Run Code Online (Sandbox Code Playgroud)

如果安装了django,它将打印其当前版本(例如1.6.5),
否则shell将打印错误消息.


Ale*_*der 28

正如你所说,你有两个版本的python,我认为它们处于不同的虚拟环境(例如venv)或conda 环境中.

当您安装django时,它可能只在一个环境中.您可能有两个不同版本的django,每个版本的python都有一个版本.

在Unix/Mac终端中,您可以按如下方式检查python版本:

$ python --version
Run Code Online (Sandbox Code Playgroud)

如果你想知道来源:

$ which python
Run Code Online (Sandbox Code Playgroud)

并检查django的版本:

$ python -m django --version
Run Code Online (Sandbox Code Playgroud)


Vis*_*gda 15

有多种方法可以获得Django版本.您可以根据您的要求使用下面给出的任何一种.

注意: 如果您在虚拟环境中工作,请加载您的python环境


终端命令

  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

Django Shell命令

  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

(如果您有某种更正或想要添加更多相关信息,请随意修改此答案.)


swa*_*ami 11

只需键入python -m django --version 或键入pip freeze即可查看已安装模块的所有版本,包括 Django。

  • 根本没有理由对此进行否决,这是最简洁的答案之一。 (2认同)

小智 11

官方文档

第一的:

python -m django --version
Run Code Online (Sandbox Code Playgroud)

第二:

import django
print(django.get_version())
Run Code Online (Sandbox Code Playgroud)


kma*_*o23 9

要使用Python shell进行检查,请执行以下操作.

>>>from django import get_version
>>> get_version()
Run Code Online (Sandbox Code Playgroud)

如果您希望在Unix/Linux shell中使用单行执行此操作,那么请执行此操作

python -c 'import django; print(django.get_version())'
Run Code Online (Sandbox Code Playgroud)

开发完应用程序后,可以使用以下方法直接检查版本.

python manage.py runserver --version
Run Code Online (Sandbox Code Playgroud)


Vis*_*ran 9

django-admin --version
python manage.py --version
pip freeze | grep django
Run Code Online (Sandbox Code Playgroud)


Muh*_*bin 7

Django 版本或任何其他包版本

打开终端或命令提示符

类型

pip show django
Run Code Online (Sandbox Code Playgroud)

或者

pip3 show django
Run Code Online (Sandbox Code Playgroud)

您可以找到任何软件包版本...

例子:

pip show tensorflow

pip show numpy
Run Code Online (Sandbox Code Playgroud)

等等....


小智 7

输入您的 CMD 或终端:

python -m django --version
Run Code Online (Sandbox Code Playgroud)


Geo*_*ins 5

Django将使用PYTHONPATH环境变量指定的Python版本.您可以echo $PYTHONPATH在shell中使用以确定将使用哪个版本.

Django使用的模块版本将是在PYTHONPATH指定的Python版本下安装的模块版本.


yel*_*cap 5

utilsDjango 中有一个未记录的版本模块:

https://github.com/django/django/blob/master/django/utils/version.py

有了它,您可以将普通版本作为字符串或详细版本元组获取:

>>> from django.utils import version
>>> version.get_version()
... 1.9
>>> version.get_complete_version()
... (1, 9, 0, 'final', 0)
Run Code Online (Sandbox Code Playgroud)


小智 5

pip list在LINUX TERMINAL上运行并在列表中找到Django及其版本

pip freeze在Windows上运行cmd