确保满足以下先决条件:
您正在使用 PyCharm 2016.1 或更高版本。如果您还没有 PyCharm,请从此页面下载。要安装 PyCharm,请按照说明进行操作,具体取决于您的平台。
您的计算机上至少正确安装了一个 Python 解释器。您可以从此页面下载解释器。
你已经安装了 Django 包。要了解如何使用 PyCharm UI 安装包,请阅读安装、卸载和升级包部分。您还可以按照如何安装 Django 页面中的说明安装 Django。
本教程是根据以下假设创建的:
实际上,所有新项目都以相同的方式创建:通过单击欢迎屏幕快速启动区域中的新建项目按钮:
如果您已经打开了一个项目,请选择
来自主菜单。然后,选择所需的项目类型(这里是 Django)。指定项目名称和位置。
Python 最佳实践是为每个项目创建一个 virtualenv。在大多数情况下,PyCharm 会自动创建一个新的虚拟环境,您无需进行任何配置。不过,您可以预览和修改 venv 选项。展开Python Interpreter: New Virtualenv Environment节点并选择用于创建新虚拟环境的工具。让我们选择Virtualenv工具,并指定环境的位置和用于新虚拟环境的基本 Python 解释器。
接下来,展开更多设置节点并指定与 Django 相关的设置。在Application name字段中指定应用程序名称(这里是polls)。单击创建- Django 项目已准备就绪。
如上所述,基本上,存根项目已准备就绪。它包含特定于框架的文件和目录。当您创建任何受支持类型的项目时也会发生同样的情况,无论是 Pyramid 还是 Google App Engine。
让我们看看新项目的结构如何在项目工具窗口中可见。
默认情况下显示此视图。它显示了 Django 特定的项目结构:polls和mysite目录;此外,您还会看到manage.py和settings.py文件。
请注意,您无法在此视图中看到.idea目录:
如果您想查看.idea目录的内容,请选择视图Project Files:如您所见,此视图显示相同的目录和文件,加上.idea目录,因为它位于项目根目录下:
让我们回到项目视图。
mysite目录是您项目的容器。在项目视图中,它用粗体字表示。
manage.py:这是一个命令行实用程序,可让您与 Django 项目进行交互。有关详细信息,请参阅Django 文档。
嵌套目录mysite是您项目的实际 Python 包。
mysite/__init__.py:这个空文件告诉 Python 这个目录应该被认为是一个 Python 包。
mysite/settings.py:此文件包含您的 Django 项目的配置。
mysite/urls.py:该文件包含Django 项目的 URL 声明。
mysite/wsgi.py:这个文件定义了一个与 WSGI 兼容的 web 服务器的入口点来服务你的项目。有关更多详细信息,请参阅如何使用 WSGI进行部署。
嵌套目录polls包含开发 Django 应用程序所需的所有文件(此时,这些文件是空的):
模板目录现在是空的。它应该包含模板文件。
嵌套目录迁移现在仅包含包文件_init_.py,但将来将用于将您对模型所做的更改(添加字段、删除模型等)传播到数据库模式中。在此处阅读迁移说明。
请注意,您可以根据需要创建任意数量的 Django 应用程序。要将应用程序添加到项目中,请运行manage.py实用程序的startapp
任务( ,然后在控制台中键入)。startapp
现在,当项目存根准备好时,让我们进行一些微调。打开以编辑settings.py。为此,请在项目工具窗口中选择文件,然后按F4。该文件在编辑器中的自己的选项卡中打开。
指定您将在应用程序中使用的数据库。为此,请找到DATABASES
变量:单击Ctrl+F,然后在搜索字段中开始输入您要查找的字符串。然后,在该'ENGINE'
行中,在点之后添加您的数据库管理系统的名称(您可以使用注释后指定的任何名称,但首先我们将从sqlite3开始。)
在该'NAME'
行中,输入所需数据库的名称,即使它尚不存在。
由于我们谨慎地选择了sqlite3,我们不需要定义其他值(用户凭据、端口和主机)。现在让我们检查一下我们的设置是否正确。这可以很容易地完成:只需启动manage.pyrunserver
实用程序的任务:按,然后在manage.py控制台中输入任务名称:Ctrl+Alt+R
按照建议的链接查看以下页面:
接下来,打开以编辑文件models.py,并注意 import 语句已经存在。然后键入以下代码:
实际上,您可以只复制粘贴,但建议输入 - 它可以帮助您查看强大的 PyCharm 代码完成功能:
我们必须为新模型创建表。为此,我们将使用魔法Ctrl+Alt+R快捷方式来调用manage.py控制台。要执行的第一个命令是makemigrations polls
:
因此,您告诉 Django 已经创建了两个新模型,即Choice
和Question
,并创建了一个迁移:
接下来,在提示符后,键入以下命令:
sqlmigrate polls 0001
最后,运行migrate
命令在数据库中实际创建这些表:
首先,创建一个超级用户。为此,请在manage.pycreatesuperuser
控制台中键入命令,指定您的电子邮件地址和密码:
由于我们决定启用站点管理,PyCharm 已经取消了文件urls.py中相应行的注释。
打开polls目录下的admin.py文件进行编辑,看到下面已经存在的代码:
但是,我们需要为管理站点启用编辑功能。
我们现在准备好进入管理页面。当然,很可能运行 Django 服务器,然后转到您的浏览器,在地址栏中输入整个 URL,但是使用 PyCharm 有一个更简单的方法:使用预先配置的 Django 服务器运行配置并稍作修改.
要打开此运行/调试配置进行编辑,请在主工具栏上单击运行/调试配置选择器,然后选择编辑配置(或从主菜单中选择
在“运行/调试配置”对话框中,为该运行/调试配置命名(此处为mysite
),启用在默认浏览器中运行应用程序(选中复选框“运行浏览器”)并指定默认打开的站点页面(这里这个页面是http://127.0.0.1:8000/admin/):
现在,要启动应用程序,请按Shift+F10或单击主工具栏以打开标准 Django 站点登录页面:
登录后,将显示管理页面。它有一个部分Authentication and Authorization (Groups and Users),但Polls不可用。为什么这样?
我们必须告诉 adminQuestion
对象有一个管理界面;为此,让我们打开文件polls/admin.py进行编辑(在项目视图中选择它并按F4),然后输入以下代码:
再次注意代码完成:
刷新页面,看到出现了带有问题的投票部分:
单击添加以创建一些问题。
但是,每个问题都有多个选择,但仍然没有选择。再次打开以编辑文件polls/admin.py并将其更改如下:
现在查看更改问题页面:
打开文件polls/views.py进行编辑并输入以下 Python 代码:
接下来,在polls目录中添加一个名为urls.py的新文件,并在其中键入以下代码:
接下来,打开以编辑文件mysite/urls.py(PyCharm 已经为您创建了该文件)并为索引页面添加一个 URL。您应该最终得到以下代码:
现在,打开页面127.0.0.1:8000/polls/并享受:
接下来,让我们添加更多视图。同样,将以下代码添加到文件polls/views.py 中:
polls.urls
通过添加以下url()
调用将这些新视图连接到模块中:
如果您现在在浏览器中打开相应的页面,您将看到,例如:
如您所见,这些页面的设计在视图中是硬编码的。因此,为了使其更具可读性,您必须编辑相应的 Python 代码。然后让我们将输出的可视化表示与 Python 分开 - 为此,让我们创建模板。
打开以编辑文件polls/views.py并将其内容替换为以下代码:
顺便提一下,帮助您创建导入语句的导入助手。
您注意到的第一件事是对页面index.html的未解决引用:
PyCharm 建议快速修复:如果单击灯泡或按Alt+Enter,则会在模板文件夹中创建相应的模板文件(请注意,PyCharm 还会创建该模板应驻留的目录polls ):
到目前为止,文件index.html是空的。向其中添加以下代码:
注意模板文件中的代码完成!例如,当您键入开头时{%
,PyCharm 会自动添加匹配的结尾%}
,将插入符号放在将来输入的位置。在 HTML 标记中,也可以使用代码完成。
注意分别出现在文件views.py和index.html中的图标和图标:
这些图标使您可以立即在视图方法及其模板之间跳转。在文章在模板和视图之间导航和第 6 部分。Django-specific navigation中阅读有关这种导航的更多信息。
正如您在视图文件index.html中看到的,有一个对样式表的引用,但未解决:
通过以下方式解决此引用:
创建目录。为此,在项目视图中,选择 Python 包polls,然后按Alt+Insert。
在出现的弹出菜单上,选择Directory,并指定目录结构的名称static/polls。
接下来,在这个目录中创建一个样式表。为此,请选择最里面的目录polls,按Alt+Insert,选择选项Stylesheet,然后在打开的对话框中输入样式。
根据您的喜好,为创建的样式表提供一些内容。例如,我们希望看到绿色问题的项目符号列表:
现在让我们检查可用民意调查的列表。我们的管理站点已经在运行,访问包含投票列表的页面(索引页面)的最简单方法是指定其 URL:在浏览器的地址栏中,而不是/admin/,键入/polls / :
现在让我们看看 PyCharm 如何帮助简化应用程序的测试。
polls目录中已经有文件tests.py 。到目前为止,这个文件是空的。自然,建议将新测试放在这个特定文件中。例如,我们想确保我们的投票不为空:
要运行此测试,请在编辑器中右键单击文件tests.py的背景,选择Run选项,或者只需按Ctrl+Shift+F10。PyCharm 建议两个选项:运行 UnitTest(定义为默认测试运行程序)或 Django 测试。
测试结果显示在Run工具窗口的Test Runner选项卡中:
这个简短的教程就结束了。您已成功创建并启动了一个简单的 Django 应用程序。让我们重复一下在 PyCharm 的帮助下所做的事情:
已创建 Django 项目和应用程序
Django 服务器启动
已配置的数据库
创建的模型、视图和模板
应用程序启动
创建和执行的测试