Django是一个免费的开源高级Python Web框架,旨在帮助开发人员构建安全,可扩展和可维护的Web应用程序。

根据您的需要,有不同的方法来安装Django。它可以使用pip在系统范围内安装或在Python虚拟环境中安装。

Django软件包也包含在官方Ubuntu存储库中,可以使用apt软件包管理器进行安装。这是在Ubuntu 18.04上安装Django的最简单方法,但不如在虚拟环境中安装那么灵活。此外,存储库中包含的版本总是落后于最新版本的Django。

Python虚拟环境的主要目的是为不同的Python项目创建一个独立的环境。这样,您可以在一台计算机上拥有多个不同的Django环境,并在每个项目的基础上安装特定版本的模块,而不必担心它会影响您的其他Django安装。如果您将Django安装到全局环境中,那么您只能在计算机上安装一个Django版本。

在Ubuntu 18.04上安装Django

以下部分提供了有关如何在Ubuntu 18.04上的Python虚拟环境中安装Django的分步说明。

1.安装Python 3和venv

默认情况下,Ubuntu 18.04附带Python 3.6。 您可以通过键入以下内容来验证系统上是否安装了Python 3:

python3 -V

输出应如下所示:

Python 3.6.6

从Python 3.6开始,创建虚拟环境的推荐方法是使用venv模块。 要安装提供venv模块的python3-venv软件包,请运行以下命令:

sudo apt install python3-venv

一旦安装了模块,我们就可以为Django应用程序创建一个虚拟环境了。

2.创建虚拟环境

首先导航到要存储Python 3虚拟环境的目录。 它可以是您的主目录或您的用户具有读写权限的任何其他目录。

为Django应用程序创建一个新目录并导航到它:

mkdir my_django_app
cd my_django_app

进入目录后,运行以下命令以创建新的虚拟环境:

python3 -m venv venv

上面的命令创建了一个名为venv的目录,其中包含Python二进制文件的副本,Pip包管理器,标准Python库和其他支持文件。 您可以为虚拟环境使用任何名称。

要开始使用此虚拟环境,您需要通过运行activate脚本来激活它:

source venv/bin/activate

激活后,虚拟环境的bin目录将添加到$ PATH变量的开头。 此外,您的shell提示符也会更改,它将显示您当前使用的虚拟环境的名称。 在我们的情况下是venv:

3.安装Django

现在虚拟环境已激活,您可以使用Python包管理器pip来安装Django:

pip install django

在虚拟环境中,您可以使用命令pip而不是pip3和python而不是python3。

要验证安装,请使用以下命令打印Django版本:

python -m django --version

在撰写本文时,最新的官方Django版本是2.1.2

2.1.2

您的Django版本可能与此处显示的版本不同。

4.创建Django项目

要创建名为mydjangoapp的新django项目,请使用django-admin命令行实用程序:

django-admin startproject mydjangoapp

上面的命令将在当前目录中创建一个mydjangoapp目录。

tree  mydjangoapp/
mydjangoapp/
|-- manage.py
`-- mydjangoapp
|-- __init__.py
|-- settings.py
|-- urls.py
`-- wsgi.py

在该目录中,您将找到用于管理名为manage.py的项目的主脚本和另一个目录,包括数据库配置,django和特定于应用程序的设置。

让我们迁移数据库并创建一个管理用户。

首先导航到mydjangoapp目录:

cd mydjangoapp

默认情况下,Django使用SQLite数据库。 对于生产应用程序,您可以使用PostgreSQL,MariaDB,Oracle或MySQL数据库。

运行以下命令以迁移数据库:

python manage.py migrate

输出将如下所示:

Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... 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 auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying sessions.0001_initial... OK

迁移数据库后,创建一个管理用户,以便您可以使用Django管理界面:

python manage.py createsuperuser

该命令将提示您输入管理用户的用户名,电子邮件地址和密码。

Username (leave blank to use 'linuxize'): admin
Email address: admin@linuxize.com
Password:
Password (again):
Superuser created successfully.

5.测试开发服务器

使用manage.py脚本后跟runserver选项启动开发Web服务器:

python manage.py runserver

您将看到以下输出:

Performing system checks...

System check identified no issues (0 silenced).
October 20, 2018 - 11:16:28
Django version 2.1.2, using settings 'mydjangoapp.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

如果您在虚拟机上安装了Django并且想要访问Django开发服务器,那么您需要编辑settings.py文件,在ALLOWED_HOSTS列表中添加服务器IP地址。

在Web浏览器中打开http://127.0.0.1:8000,您将看到默认的Django登录页面:

ubuntu-18-04-django-landing-page

您可以通过在URL的末尾添加/ admin /来访问Django管理界面(http://127.0.0.1:8000/admin/)。 这将带您进入管理员登录界面:

ubuntu-18-04-django-login-page

输入您的用户名和密码,您将被重定向到Django管理页面:

ubuntu-18-04-django-admin-page

要停止开发服务器,请在终端中键入CTRL-C。

6.停用虚拟环境

完成工作后,通过键入deactivate来停用环境,您将返回正常的shell。

deactivate

总结

您已经学习了如何在Ubuntu 18.04计算机上创建Python虚拟环境并安装Django。 要创建其他Django开发环境,请重复本教程中概述的步骤。

如果您是Django的新手,请访问Django文档页面,了解如何开发您的第一个Django应用程序。

如果您遇到任何问题,请随时发表评论。

如何在Ubuntu 18.04上安装Django的更多相关文章

  1. 如何在Ubuntu 18.04上安装Pip

    一.简介: Pip是一个软件包管理系统,它简化了用Python编写的软件包(如Python包索引(PyPI)中的软件包)的安装和管理. 在Ubuntu 18.04上缺省没有安装Pip,但安装非常简单. ...

  2. 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)

    如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...

  3. 如何在Ubuntu 18.04上安装Go

    如何在Ubuntu 18.04上安装Go 谢鸢发表于云计算教程系列订阅98 介绍 课程准备 第1步 - 安装Go 第2步 - 设置Go路径 第3步 - 测试您的安装 结论 介绍 Go是Google开发 ...

  4. 如何在Ubuntu 18.04上安装Apache Web服务器

    一. apt库安装 1.在终端输入更新检查命令,sudo apt-get update 2. 在更新完成后(如果不想检查更新,也可直接输入此步)输入:sudo apt-get install apac ...

  5. 如何在Ubuntu 18.04上安装和卸载TeamViewer

    卸载命令:sudo apt --purge remove teamviewer 安装:https://www.linuxidc.com/Linux/2018-05/152282.htm 如何在Ubun ...

  6. 如何在Ubuntu 18.04上安装Nginx

    Nginx功能之强大,想必大家比我更清楚. 百度百科:Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务.Nginx是由伊戈尔 ...

  7. 转载:如何在Ubuntu 18.04上使用UFW设置防火墙

    https://blog.csdn.net/u013068789/article/details/82051943 介绍 UFW或Uncomplicated Firewall是iptables一个接口 ...

  8. 在Ubuntu 18.04上安装OpenCV 4(C ++和Python)

    OpenCV于11月20日发布了OpenCV-3.4.4和OpenCV-4.0.0.这些版本中有很多错误修复和其他更改.发布重点如下: OpenCV现在是C ++ 11库,需要符合C ++ 11标准的 ...

  9. 如何在Ubuntu 18.04中安装VMware Workstation Player

    参考链接 如何在Ubuntu 18.04中安装VMware Workstation Player https://www.sysgeek.cn/ubuntu-18-04-install-vmware- ...

随机推荐

  1. Luogu P3165 [CQOI2014]排序机械臂

    先讲一下和这题一起四倍经验的题: Luogu P4402 [Cerc2007]robotic sort 机械排序 SP2059 CERC07S - Robotic Sort UVA1402 Robot ...

  2. JSOUP如何优秀的下载JPEG等二进制图像

    引言 JSOUP默认是不支持解析JPEG等二进制图像的,解决方法也很简单,只需要加上Jsoup.ignoreContentType(true)这一行代码就可以.关于这一点的原因,来看看官方API说明. ...

  3. 深入理解Redis Cluster

    Redis Cluster采用虚拟槽分区,所有的key根据哈希函数映射到0~16383槽内,计算公式: slot = CRC16(key) & 16383 每个节点负责维护一部分槽以及槽所映射 ...

  4. Java基础之数据比较Integer、Short、int、short

    基础很重要,基础很重要,基础很重要.重要的事情说三遍,. 今天聊一聊Java的数据比较,这个范围比较大,基础类型的比较.引用类型的比较. 前提: 1.Java和c#都提供自动装箱和自动拆箱操作,何为自 ...

  5. 小L记单词

    题目描述 小L最近在努力学习英语,但是对一些词组总是记不住,小L小把这些词组中每一个单词的首字母都记一下,这样形成词组的缩写,通过这种方式小L的学习效率明显提高. 输入 输入有多行,每组测试数据占一行 ...

  6. 这款APP太像微信 腾讯起诉索赔1000万

    去年8月,“币应”(inChat)APP上线,号称是一款原创的区块链加密通讯工具,而界面与微信极为相似,图标是白配绿色调,内部界面几乎一模一样,通讯录.朋友圈的界面完全相同.里面的小游戏,也从微信拿来 ...

  7. 初次使用git上传代码到github远程仓库

    https://blog.csdn.net/loner_fang/article/details/80488385 2018年05月28日 21:02:31 蒲公英上的尘埃 阅读数:697 因为最近在 ...

  8. 解决mysql1336

    1.mysql字符集与插入数据字符集不匹配 USE 数据库名称SHOW VARIABLES LIKE 'character%'SET character_set_server=utf8;SET cha ...

  9. winform自定义控件开发

    1.添加控件属性 //添加私有的控件属性 private string djm;//单据名 //添加属性描述 [Browsable(true)] [Description("djm" ...

  10. JS刷新当前页面的几种方法总结

    reload 方法,该方法强迫浏览器刷新当前页面. 语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页 ...