创建一个项目
如果这是你第一次使用Django,你将不得不注意一些初始化步骤。你将需要自动生成一些代码来建立一个Django项目-----它是一个针对Django实例的设置的收集,包括数据库设置,特定Django的选项和特定应用程序的选项。
从命令行,cd到你想存储你代码的目录,然后使用下列命令:
这将会在你当前目录下创建一个mysite目录。如果它不能正常工作,请看这里https://docs.djangoproject.com/en/1.7/faq/troubleshooting/#troubleshooting-django-admin-py
注意: 你将需要避免命名项目为内建的python或Django内容。尤其,这意味着你应该避免使用像django(那将和Django它本身冲突)或test(那将和一个内建的python包冲突)这样的名字。 |
代码应该放在哪? 如果你的背景是使用过旧的PHP(或者没使用过现代框架),你很可能习惯把代码放到web服务器根文档根目录下(例如/var/www这样的一个位置)。在Django下,你将不需要那样做。把任何的python代码放到web服务器的文档根目录下并不是一个好的想法,因为它会增加风险的可能性以至于人们可能会通过web查看到你的代码。那对安全并不好。 把你的代码放到文档根目录外面的目录,例如/home/mycode. |
让我们看一下被创建的startproject:
和你看到的不匹配? 默认的项目布局最近被改变了。如果你看见了一个“flat”布局(没有内部的mysite目录),你可能使用了一个不匹配这片指南的Django。你将要么降低指南要么更新Django。 |
这些文件是:
1 外面的mysite/根目录就是一个针对你项目的包含器。它的名字对Django没有任何影响;你可以把它重命名成任何你喜欢的。
2 manage.py:一个命令行程序它会让你通过各种方式同Django交互。你可以读一下关于manage.py的全部细节在这里https://docs.djangoproject.com/en/1.7/ref/django-admin/
3 内部的mysite/目录就是你项目的实际python包,它的名字就是你将用来导入任何东西的python包名(例如:mysite.urls)。
4 mysite/__init__.py:一个空的目录它用来告诉python这个目录应该被认为是一个python包。(如果你是一个python初学者,读一下http://docs.python.org/tutorial/modules.html#packages这里的官方python文档)
5 mysite/settings.py:针对django项目的设置或配置。https://docs.djangoproject.com/en/1.7/topics/settings/这里将会告诉你全部关于设置如何工作的。
6 mysite/urls.py:针对这个django项目的URL声明;你的django驱动的站点的一个“内容列表”。你能读更多关于URLs在https://docs.djangoproject.com/en/1.7/topics/http/urls/
7 mysite/wsgi.py:一个针对和WSGI兼容的web服务器的入口点来服务你的项目。看这里https://docs.djangoproject.com/en/1.7/howto/deployment/wsgi/来获得更多细节。