如何安装 django(Page 17)

这一部分可以让你将 Django 运行起来。

安装 Python

作为 python 的一个 web 框架,Django 依赖 Python。Python 的哪个版本可以使用 Django?

Django version Python versions
1.8 2.7, 3.2 (until the end of 2016), 3.3, 3.4, 3.5
1.9, 1.10 2.7, 3.4, 3.5
1.11 2.7, 3.4, 3.5, 3.6
2.0 3.4, 3.5, 3.6
2.1 3.5, 3.6, 3.7

获取最新版本的 Python 可以在 https://www.python.org/downloads/或者在你的操作系统的管理器里。

Jython 中的 Django
Jython(java 平台上个一个 python 实现)和 python3不兼容,所以 大于等于 2.0 版本的 django 无法运行在 Jython 上。

Windows 中的 Python
如果你要在 windows 中运行了 Django, 你可以查看 如何在 windows 中安装 Django(这里差一个链接)

安装 Apache 和 mod_wsgi

如果你只是想尝试使用一下 Django,请跳到下一节;Django 包含一个用于测试的轻量级 web 服务,所以在你准备将Django 部署到生产环境之前,你是不需要安装 Apache 的。
如果想在一个生产环境中的站点使用 Django,可以使用 Apache 和 mod_wsgi。mod_wsgi 有两种操作模式:嵌入式模式和守护模式。 在嵌入式模式,mod_wsgi 类似 mod_perl ——它在 Apache 中嵌入 Python,当服务启动时将 Python 代码加载到内存里。在 Apache 进程的整个生命周期代码会一直停留在内存,这样做会比其他的服务器有更好的性能。 在守护模式,mod_wsgi 会生成一个独立的守护进程去处理请求。守护进程可以以和 web 服务不同的用户来运行,可以提高安全性,并且守护进程可以在不重启整个 Apache web 服务的情况下进行重启操作,使代码可以平滑无缝的切换。查看 mod_wsgi 文档以确定你的安装适合使用哪一种模式。 确保你已经安装了 Apache,mod_wsgi 已被激活。 Django 可以在任何支持 mod_wsgi 的 Apache 版本中运行。

查看 如何在 mod_wsgi 中使用 Django(这里差一个链接) 的信息,了解如何配置你安装的 mod_wsgi。

如果因为一些原因你不想使用 mod_wsgi,不要担心:Django 支持许多其他部署方式。其中一种就是 uWSGI(这里差一个链接);它可以和 nginx 配合的很好。另外,Django 遵循 WSGI 标准(PEP 3333),可以在各种平台上运行。

运行你的数据库

如果你计划使用 Django 的数据库 API 功能,你需要确定有一个在运行的数据集库服务。Django 支持许多不同的数据库,并且PostgreSQLMySQLOracle and SQLite 都被正式支持。

如果你正在开发一个简单的项目或者其他东西,你也不打算在生产环境中部署,SQLite 通常是最简单的选择,它不需要运行一个单独的服务。不管怎么说,SQLite 还是和其他的数据库有很多不同,如果你在进行一些实质性工作的时候,建议你部署和生产环境中要使用的数据库相同的数据库。

除了官方支持的数据库,还有第三方提供的数据库后端(这里差一个链接),让你在 Django 中使用其他的数据库。
除了数据库后端,你还需要确认你的 Python数据库绑定已经安装。

如果你计划用 Django 的 manage.py migrate 命令为你的 models自动创建数据库表(在第一次安装 Djnago 并创建项目之后),你需要确认,DJnaog 有权限创建和修改该你使用的数据库表。如果你计划手动创建数据库表,你可以简单的授权 Django 使用SELECT, INSERT, UPDATE,DELETE的权限,在创建有这些权限的数据库用户后,你需要在你的项目的配置文件中指定这些信息。详细信息请看这里(这里差一个链接)

如果你在使用 Django 的测试框架(这里差一个链接)测试数据库查询,Django 还需要创建一个测试数据库的权限。

卸载旧版本的 Django

如果你正在将一个旧版本的 Django 升级到新版本,你需要在安装新版本 Django 之前先卸载旧版本的 Django。
如果你使用 pip 或者 easy_install 安装的 Django。使用 pip 或者 easy_install 再次安装一次即可,它们会自动更新旧版本到新版本,所以你不需要自己管理安装。
如果你以前是用python setup.py install 安装的 Django,删除也很简单,删除 Python 安装目录中 site-packages下的 django 目录即可。找到你要删除的目录,有可以在 shell 中执行执行以下命令:

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

安装 django 代码

针对不同版本的安装包,安装指南略有不同,是选择最新的正式版本,还是选择最新的开发版本。

使用 pip 安装一个正式版本

这是安装 Django 的的建议方式:
1. 安装 pip,最简单的方式使用独立的 pip 安装器。如果你已经安装了 pip,你可能需要更新它,你知道,如果他已经过时了,安装会失败。
2. 去看一下看 virtualenv和 virtualenvwrapper。这些工具提供隔离的 Python 环境,它比安装在系统里更实用。它还可以让你即使没有管理员权限也可以安装包。这里提供的教程(这里少一个链接)会告诉你如何创建virtualenv环境。
3. 创建和激活一个虚拟环境之后,在 shell 提示符后输入命令 pip install Django

安装指定版本的包

检查发布版本的具体记录,去看看你使用的平台/发布版 是否提供正式版本的 Django 安装包或者安装器。提供的分发版本通常可以自动安装依赖和易于升级的方法。不管如何,这些安装包很少会包含最新版本的 Django。

安装开发版本

跟踪 Django 开发版
如果你决定使用最新的开发版,你要密切关注 开发时间线,并且要注意 即将发布的发行版(这里差一个链接)。这会让你想使用的新功能以及任何变化都保持在最新,当你更新 Django 的时候,你也需要当你的代码进行更新。(对于稳定版,任何必要的改变都会记录在发布说明中。)

如果你偶尔想要更新你的 Django,使用最新的 bug 修复和实现,可以看下面的内容:
1. 确保已经安装了 Git并且你可以在 shell 中运行它,(可以在 shell 中执行git help命令来验证)
2. 检查 DJnaog 的主开发分支,命令如下:

$ git clone https://github.com/django/django.git

这会在你的当前目录创建一个名字为 django 的目录。
3. 确认 Python 解释器可以加载 Django 的代码。要做到这点最方便的方法是使用 virtualenvvirtualenvwrapper, 和 pip.这里提供的教程(这里少一个链接)会告诉你如何创建virtualenv环境。
4. 在建立并激活 virtualenv 后,运行下面的命令:

$ pip install -e django/

这样就就导入了 Djnago 的代码,也会是 django-admin工具命令生效。也就是说,你已经为使用 Django 做好了准备。

当你想要更新的 django 源代码拷贝时,只需要在 django 目录运行 git pull命令,执行之后,Git 会自动下载所有的更新

Django 2.0.1 官方文档翻译: 如何安装 django (Page 17)的更多相关文章

  1. Django 2.0.1 官方文档翻译: 快速安装向导 (Page5)

    快速安装向导 (Page 5) 在你使用 Django 前,你需要先安装它.我们有一个完整的安装向导,它包含所有涉及的内容,这个向导会指导你进行一个简单的.最小化的安装,当你通过浏览介绍内容的时候,这 ...

  2. Django 2.0.1 官方文档翻译: 文档目录 (Page 1)

    Django documentation contents 翻译完成后会做标记. 文档按照官方提供的内容一页一页的进行翻译,有些内容涉及到其他节的内容,会慢慢补上.所有的翻译内容按自己的理解来写,尽量 ...

  3. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第一部分(Page 6)

    编写你的第一个 Django app,第一部分(Page 6)转载请注明链接地址 Django 2.0.1 官方文档翻译: Django 2.0.1.dev20171223092829 documen ...

  4. Django 2.0.1 官方文档翻译:编写你的第一个djang补丁(page 15)

    编写你的第一个djang补丁(page 15) 介绍 有兴趣为社区做一些贡献?可能你发现了django中的一个你想修复的bug,或者你你想添加一个小小的功能. 回馈django就是解决你遇到的问题的最 ...

  5. Django 2.0.1 官方文档翻译:接下来读什么(page 14)

    接下来读什么(page 14) 现在你应该已经阅读了所有的(page1-13 )介绍材料,决定继续使用Django.我们仅仅做了简要的介绍(事实上,如果你阅读了前面所有的内容,也只是全部文档的5%.) ...

  6. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第二部分(Page 7)

    编写你的第一个 Django app,第二部分(Page 7)转载请注明链接地址 本教程上接前面的教程.我们会配置数据,创建你的第一个 model,并对Django 自动生成的 admin 站点进行快 ...

  7. Django 2.0.1 官方文档翻译:编写你的第一个 Django app,第六部分(Page 11)

    编写你的第一个 Django app,第六部分(Page 11)转载请注明链接地址 本教程上接前面第五部分的教程.我们构建了一个经过测试的 web-poll应用,现在我们会添加一个样式表和一张图片. ...

  8. Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第三部分(Page 8)

    编写你的第一个 Django app,第三部分(Page 8)转载请注明链接地址 本页教程接前面的第二部分.我们继续开发 web-poll app,我们会专注于创建公共接口上 -- "视图& ...

  9. Django 2.0.1 官方文档翻译: 高级教程:如何编写可重用的app (page 13)

    高级教程:如何编写可重用的app (page 13) 本节教程上接第七部分(Page 12).我们会把我们的 web-poll应用转换成一个独立的python包,你可以在新的项目中重用或者把它分享给其 ...

随机推荐

  1. Journal entry of the eleventh chapter to chapter twelfth

    第十一章:正如很多人一样,觉得软件工程这个课程好像没什么用,感觉提高不了自己的写代码能力,学的都是理论知识,好像对于我们这种技术类的专业离得有点远,是这样的吗? 第十二章:每样东西都没有完美的,即使我 ...

  2. 如何:通过将HTML编码应用于字符串来防止Web应用程序中的脚本漏洞

    当用户可以将可执行代码(或脚本)添加到您的应用程序中时,会发生大多数脚本攻击.默认情况下,ASP.NET提供请求验证,如果表单发布包含任何HTML,则会引发错误. 您可以通过以下方式帮助防止脚本漏洞利 ...

  3. ubuntu安装php-curl拓展

    首先输入apt-cache search curl | grep php查询curl的php支持名字可能会返回如下内容:php5-curl - CURL module for php5安装:sudo ...

  4. 关于char存储值表示

    char里面-128的二进制表示为1000 0000,0的二进制表示为0000 0000 -127的二进制表示为1000 0001, 127的二进制表示为0111 1111. 从-127到-1和1到1 ...

  5. C++编译与链接(2)-浅谈内部链接与外部链接

    发现每次写技术博客时,都会在文章开头处花费一番功夫 ...从前,有一个程序员....他的名字叫magicsoar 为什么有时会出现aaa已在bbb中重定义的错误? 为什么有时会出现无法解析的外部符号? ...

  6. windows下python3.6安装pycryto or crypto or pycryptodome与使用

    pycrypto,pycrytodome和crypto是一个东西,在很久以前,crypto在python上面的名字是pycrypto它是一个第三方库,但是已经停止更新三年了,所以不建议安装这个库: w ...

  7. WDS迁移注意事项

    先说背景:公司使用WDS来部署操作系统,目前DHCP和WDS都安装在同一台服务器上,但是此服务器已过保,所以筹划迁移,将WDS和DHCP分别迁移到两台服务器上.迁移计划是保持WDS暂时不动,DHCP先 ...

  8. [转帖] Oracle 关闭自动收集统计信息

    --关闭自动统计信息 https://blog.csdn.net/royzhang7/article/details/51172556 明天再仔细看一下. select client_name,sta ...

  9. 关于sizeof

    sizeof是求占用的内存空间的大小,并不是指数组长度.(strlen 的长度只适合char*类型) 例如. int a[10]={0}; 数组a的长度为sizeof(a)/sizeof(a[0])— ...

  10. iphonex适配

    这一篇具体适配步骤比较全面 iphonex适配 这一篇图文讲解比较全面 关于H5页面在iPhoneX适配