分享各种Django安装指南

2024-06-16 08:36:38 发布

您现在位置:Python中文网/ 问答频道 /正文

这可能是有点干净和绿色,然而当我试图解释我的设置橡胶鸭,很多次我醒来发现自己在一堆自己的头发和鸭子仍然在那里,盯着我没有感情。那时我知道是时候把事情升级到这样了。你知道吗

让我沮丧的是,最初我遵循一个我认为可信的指南,安装virtualenv等等,然后开始了我的helloworld项目。在研究一个Web服务器时,我遇到了apache2和gunicorn dilema的对决,我想我们可以使用gunicorn。我没有想太多,开始用另一个Hello World应用程序,然后我意识到我错过了版本控制,创建了另一个Hello World项目,我在这里咬我的指甲,吃我的头发,因为我发现我可能已经搞砸了文件系统的文件夹结构和惯例,在这里,我正在创建我的第四个django hello world应用程序。你知道吗

有人把我从地狱里救出来。你知道吗

  • 操作系统:ubuntu 12.04服务器lts
  • 数据库:MySQl
  • 框架:Django
  • 背景:使用d3.js创建报告应用程序
  • 事实:这个项目不会使用PaaS

我是怎么做的

  1. 易安装
  2. 已安装pip
  3. 已安装django(pip安装gunicorn django)
  4. 已安装gunicorn
  5. 设置nginx
  6. 启动django项目(cmd:startproject,runproject)

----这是事情变得模糊的部分---

  1. 安装git???你知道吗
  2. 安装django south?你知道吗
  3. 添加h5bp(待办事项)

希望知道我是否在正确的顺序或任何其他明确的指南设置django这一点


Tags: pip项目django应用程序helloworldvirtualenv指南
2条回答

这是一个很难回答的问题,因为它更多的是关于观点,而不是其他任何东西;每个人的工作方式都不同。但是,如果您了解这些建议背后的原因,那么您就可以更好地判断其他引导脚本,甚至更好地构建自己的脚本。你知道吗

以下是你需要确保的事情。你知道吗

  1. 将开发包与系统范围的Python安装隔离开来。使用^{}来实现这一点。此外,您应该确保您pin your packages,这样在升级版本时就不会感到意外了。

  2. 使用任何形式的版本控制。不一定是git。你不需要使用github.com网站. 使用mercurial,cvs,bazaar或者其他什么。重要的是你要使用一些东西。所以,找出适合你的方法,开始行动吧。

  3. 对于开发,甚至不必为web服务器操心。Django附带了一个Web服务器,您应该在开发过程中使用它。用python manage.py runserver运行它。完成开发后,应该部署任何支持wsgi的web服务器。文档提供了deployment guides可以帮助您实现这一点。

  4. 每个人和他们的狗都有一个文件夹布局和结构的建议。问题是,每个人都有自己的理由推荐它。如果你不明白为什么,你只会对布局感到沮丧。所以,我的建议是从django附带的标准布局开始。我要添加的唯一一件事是创建一个docs/目录,在其中粘贴项目的任何/所有文档;以及一个requirements/目录,在其中保存所有requirements files,并保持更新。

最后,我的一些建议。你知道吗

  1. 使用postgresql,除非你有足够的理由使用mysql。postgresql最适合于django,一些ORM特性(比如对列使用^{})只适用于postgresql。

  2. 保持模板和视图简单。与其在视图中塞满大量逻辑,不如创建其他可以导入的python模块。这将使您的项目易于扩展(例如,如果您想创建一个API)。你的模板应该有最少的逻辑。如果使用自定义模板标记,请使它们尽可能简单,因为它们很难调试。

  3. 不要害怕在ORM中创建自定义模型管理器和其他技巧。有很多东西可以让你的应用程序更容易开发。

  4. django-south是推荐的,但是在安装它之前,请确保您了解它是如何影响您的项目的;否则您只会在几次迭代之后以无法运行的迁移结束—然后您将花费大量的时间尝试修复迁移,或者干脆删除数据库并重新开始。

找到了这个伟大的资源,这几乎正是我要找的。你知道吗

2013年更新的epicserv

https://gist.github.com/epicserve/1332256(2013年更新)

森科2011年更新

http://senko.net/en/django-nginx-gunicorn/

相关问题 更多 >