我正在开始一个新的(实际上非常古老的)项目,我知道它是在Django中。我知道它已构建的Django的确切版本,我迷路了。有没有办法可以知道我的应用程序正在运行的Django版本?
答案 0 :(得分:19)
唯一的方法是猜测。我首先看一下settings.py文件(或其他基础项目文件)的创建日期
版本的发布日期:
进入你的urls.py:[4]
from django.conf.urls.defaults import *
from django.contrib import admin
或在应用程序[5]中有admin.py
个文件表明它是一个1.0+项目。
进入你的urls.py:[6]
(r'^admin/', include(admin.site.urls)),
建议1.1 +。
进入settings.py文件:
DATABASES = {
'default': {
'NAME': 'app_data',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'USER': 'postgres_user',
'PASSWORD': 's3krit'
},
'users': {
'NAME': 'user_data',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'priv4te'
}
}
会建议1.2 +。
[4]:Backwards Incompatible changes 0.96 > 1.0
答案 1 :(得分:11)
您可以根据settings.py的布局方式进行猜测。您的第一个提示来自database settings。 Django 1.2之前的方法是:
DATABASE_ENGINE = 'sqlite3' # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
DATABASE_NAME = os.path.join(BASE_DIR, 'db') # Or path to database file if using sqlite3.
#DATABASE_USER = '' # Not used with sqlite3.
#DATABASE_PASSWORD = '' # Not used with sqlite3.
#DATABASE_HOST = '' # Set to empty string for localhost. Not used with sqlite3.
#DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3.
这种方法仍然支持1.3,但现在让Django大声抱怨它被弃用了。
从Django 1.2开始,使用以下格式:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(PROJECT_DIR, 'mycms.db'),
}
}
虽然这不是确定的,但它确实至少可以提示您的应用是在Django 1.2之前还是之后编写。
请记住,针对较旧版本的Django编写的应用程序仍然可以正常工作,但如果您的代码引用了已弃用或只是移动的内容,您可能会在控制台上收到大量弃用警告。
通常可以在短期内安全地忽略这些警告,但是您应该花些时间通过更新代码来使其静音,以引用新家/格式的功能。 Django开发人员在做正确的事情方面做得很好,只要有足够的时间和警告,随着时间的推移,旧功能可以正常迁移。
答案 2 :(得分:7)
我看到上面接受的答案,我认为这更容易。也许我错过了什么,但这就是我要做的。
打开一个在其路径上有Django项目的python终端。
$ python
>>> import django
>>> print django.get_version()
0.97-pre-SVN-7668
该版本号仅供参考。你希望,你可能会有所不同。
答案 3 :(得分:0)
答案 4 :(得分:0)
https://docs.djangoproject.com/en/1.7/intro/tutorial01/:
python -c "import django; print(django.get_version())"
让我得到以下信息:
1.7.1
答案 5 :(得分:0)
Django settings for ********** project.
Generated by 'django-admin startproject' using Django 2.0.9.
For more information on this file, see
https://docs.djangoproject.com/en/2.0/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/2.0/ref/settings/
打开settings.py
文件时,您会看到上面的Django版本。