编写一个janggo应用 第一部分

通过这个教程,我们将带着你创建一个基本的投票应用程序。

我们假定你已经阅读了 安装 Django。你能知道 Django 已被安装,且安装的是哪个版本,通过在命令提示行输入命令   

python -m django --version

如果这行命令输出了一个版本号,证明你已经安装了此版本的 Django;如果你得到的是一个“No module named django”的错误提示,则表明你还未安装。

这个教程是为了 Django 3.2 写的,它支持 Python 3.6 和后续版本。如果 Django 的版本不匹配,你可以通过页面右下角的版本切换器切换到对应你版本的教程,或更新至最新版本。

如果你正在使用一个较老版本的 Python,在 我应该使用哪个版本的 Python 来配合 Django? 查找一个合适的 Django 版本。

创建项目

如果这是你第一次使用 Django 的话,你需要一些初始化设置。也就是说,你需要用一些自动生成的代码配置一个 Django project —— 即一个 Django 项目实例需要的设置项集合,包括数据库配置、Django 配置和应用程序配置。

打开命令行,cd 到一个你想放置你代码的目录,然后运行以下命令:

django-admin startproject mysite

让我们看看 startproject 创建了些什么:

 

 

这些目录和文件的用处是:

  • 最外层的 mysite/ 根目录只是你项目的容器, 根目录名称对 Django 没有影响,你可以将它重命名为任何你喜欢的名称。
  • manage.py: 一个让你用各种方式管理 Django 项目的命令行工具。你可以阅读 django-admin 和 manage.py 获取所有 manage.py 的细节。

  • 里面一层的 mysite/ 目录包含你的项目,它是一个纯 Python 包。它的名字就是当你引用它内部任何东西时需要用到的 Python 包名。 (比如 mysite.urls).

用于开发的简易服务器

让我们来确认一下你的 Django 项目是否真的创建成功了。如果你的当前目录不是外层的 mysite 目录的话,请切换到此目录,然后运行下面的命令:

python manage.py runserver

如果启动成功你应该会看到如下输出:

创建投票应用

现在你的开发环境——这个“项目” ——已经配置好了,你可以开始干活了。

在 Django 中,每一个应用都是一个 Python 包,并且遵循着相同的约定。Django 自带一个工具,可以帮你生成应用的基础目录结构,这样你就能专心写代码,而不是创建目录了。

请确定你现在处于 manage.py 所在的目录下,然后运行这行命令来创建一个应用:

python manage.py startapp polls

这将会创建一个 polls 目录,它的目录结构大致如下:

polls/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py

这个目录结构包括了投票应用的全部内容。

编写一个视图

在polls/views.py目录下

from django.http import HttpResponse
 
 
def index(request):
    return HttpResponse("Hello, world. You're at the polls index.")

下一步是要在根 URLconf 文件中指定我们创建的 polls.urls 模块。在 mysite/urls.py 文件的 urlpatterns 列表里插入一个 include(), 如下:

from django.contrib import admin
from django.urls import include, path
 
urlpatterns = [
    path('polls/', include('polls.urls')),
    path('admin/', admin.site.urls),
]

函数 include() 允许引用其它 URLconfs。每当 Django 遇到 include() 时,它会截断与此项匹配的 URL 的部分,并将剩余的字符串发送到 URLconf 以供进一步处理。

我们设计 include() 的理念是使其可以即插即用。因为投票应用有它自己的 URLconf( polls/urls.py ),他们能够被放在 "/polls/" , "/fun_polls/" ,"/content/polls/",或者其他任何路径下,这个应用都能够正常工作。

用你的浏览器访问 http://localhost:8000/polls/,你应该能够看见 "Hello, world. You're at the polls index." ,这是你在 index 视图中定义的。

posted @ 2021-09-24 10:33  郎志刚  阅读(137)  评论(0)    收藏  举报