在Ubuntu安装Django Web框架

时间:2020-03-21 11:45:22  来源:igfitidea点击:

Django是一个免费的开源Web框架,允许我们更容易且快速地构建Web应用程序的编码。
它是使用Python编程语言编写的快速,安全的框架。
在这篇简短的教程中,让我们了解如何在Ubuntu 18.04 LTS服务器中安装Django框架。
虽然这将适用于其他基于Debian/Ubuntu的系统及其衍生品,如Linux Mint。

在Ubuntu安装Django Web框架

我们可以用两种方法在Ubuntu安装Django。

  • 使用Ubuntu官方存储库;
  • 使用pip(推荐方法)。

我们会看到这两种方法。

1.使用官方存储库安装Ubuntu的Django Web框架

Django可在Ubuntu官方存储库上使用。
所以,我们可以使用命令安装它:

$sudo apt-get update
$sudo apt-get install python-django

示例输出:

Reading package lists... Done
Building dependency tree 
Reading state information... Done
The following additional packages will be installed:
 javascript-common libjs-jquery libpython-stdlib python
 python-django-common python-minimal python-sqlparse python-tz
 python2.7 python2.7-minimal
Suggested packages:
 apache2 | lighttpd | httpd python-doc python-tk python-psycopg2
 python-pymysql python-flup python-sqlite python-memcache python-pil
 python-bcrypt python-yaml geoip-database-extra
 | geoip-database-contrib gettext python-django-doc ipython bpython
 libgdal1 python-sqlparse-doc python2.7-doc binutils binfmt-support
The following NEW packages will be installed:
 javascript-common libjs-jquery libpython-stdlib python python-django
 python-django-common python-minimal python-sqlparse python-tz
 python2.7 python2.7-minimal
0 upgraded, 11 newly installed, 0 to remove and 30 not upgraded.
Need to get 3,951 kB of archives.
After this operation, 29.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]

y键入y并在何时要求我们继续安装Django时按Enter键。

验证django.

我们在Ubuntu上安装了Django。
从终端运行以下命令是否已成功安装django。

$django-admin --version

示例输出:

1.11.11

正如我们在上面的输出中看到的,已安装Django 1.11.11.

安装来自Ubuntu官方存储库的Django的一个问题是官方存储库中的版本将达到较大。
为了安装最近的稳定Django版本,请安装Django,如下面的第二种方法中所述。

2.使用pip在Ubuntu安装Django Web框架

这是由Django项目团队正式推荐的。
我们可以使用名为PIP的Python Package Manager获得最近稳定的Django版本。

使用命令更新存储库列表:

$sudo apt-get update

使用以下任何一个命令安装pip。

对于Python 2或者更低版本:

$sudo apt-get install python-pip

对于Python 3:

$sudo apt-get install python3-pip

现在,如果使用Python 2,请安装Django:

$sudo pip install django

如果使用Python 3,则使用以下命令(而不是:

$sudo pip3 install django

我们可以使用Python 2或者Python 3.我使用Python 3以获取本教程的目的。

要验证Django版本,请运行:

$django-admin --version

示例输出:

2.0.5

看到了吗?
这是比Ubuntu官方存储库中的更高版本。

我们已成功安装Django。

让我们继续看Django的基本用法。

Django基本用法

让我们创建一个名为theitroad的新项目。

为此,运行:

$django-admin startproject theitroad

上面的命令将在当前目录中创建一个名为"theitroad"的目录。

让我们检查此目录的内容。

为此,运行:

$ls theitroad/

示例输出:

manage.py theitroad

正如我们在上面的输出中看到的那样,有一个名为"manage.py"的脚本和另一个名为"theitroad"的目录。
第二个'theitroad'目录将具有实际代码。

现在,更改为"theitroad"目录:

$cd theitroad/

然后,运行以下命令以引导数据库:

$python3 manage.py migrate

注意:如果使用Python 2或者更早版本,则应运行"Python Manage.py迁移"而无引号。

我们将看到如下所示的输出。

Operations to perform:
 Apply all migrations: admin, auth, sessions, contenttypes
Running migrations:
 Rendering model states... DONE
 Applying contenttypes.0001_initial... OK
 Applying auth.0001_initial... OK
 Applying admin.0001_initial... OK
 Applying admin.0002_logentry_remove_auto_add... OK
 Applying contenttypes.0002_remove_content_type_name... OK
 Applying auth.0002_alter_permission_name_max_length... OK
 Applying auth.0003_alter_user_email_max_length... OK
 Applying auth.0004_alter_user_username_opts... OK
 Applying auth.0005_alter_user_last_login_null... OK
 Applying auth.0006_require_contenttypes_0002... OK
 Applying auth.0007_alter_validators_add_error_messages... OK
 Applying sessions.0001_initial... OK

接下来,我们需要创建一个管理用户。

为此,运行:

$python3 manage.py createsuperuser

输入用户名(留空以使用当前用户名),密码。

Username (leave blank to use 'sk'): 
Email address: Hyman@theitroad
Password: 
Password (again): 
Superuser created successfully.

最后,运行以下命令以启动Django开发服务器。

$python3 manage.py runserver 0.0.0.0:8000

示例输出:

Performing system checks...
System check identified no issues (0 silenced).
Jan 12, 2015 - 10:05:23
Django version 1.9.6, using settings 'theitroad.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.

恭喜! Django开发服务器已启动。
要停止Django服务器,请按Ctrl + C.

访问Django开发服务器页面

打开Web浏览器并导航到HTTP://IP地址:8000。

哎呀!有一个错误!!

DisallowedHost at /
Invalid HTTP_HOST header: '192.168.225.26:8000'. You Jan need to add '192.168.225.26' to ALLOWED_HOSTS.

编辑settings.py文件。
它将在项目目录(我的情况下)。

$nano theitroad/settings.py

找到以下行:

[...]
ALLOWED_HOSTS = []
[...]

并如下所示修改它。

[...]
ALLOWED_HOSTS = ['192.168.225.26']
[...]

用我们自己替换上述IP地址。

保存并关闭文件。
刷新页面以重新加载URL。