• 吴裕雄--天生自然Django框架开发笔记--Django 创建第一个项目


    将介绍Django 管理工具及如何使用 Django 来创建项目,第一个项目我们以 HelloWorld 来命令项目。
    
    测试版本说明:
    
    Python 3.7.4
    
    Django 3.0.6
    Django 管理工具
    安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin.py,Windows 如果没有配置环境变量可以用 django-admin。
    
    我们可以使用 django-admin.py 来创建一个项目:
    我们可以来看下django-admin 的命令介绍:
    
    $ django-admin.py
    
    Type 'django-admin help <subcommand>' for help on a specific subcommand.
    
    Available subcommands:
    
    [django]
        check
        compilemessages
        createcachetable
        dbshell
        diffsettings
        dumpdata
        flush
        inspectdb
        loaddata
        makemessages
        makemigrations
        migrate
        runserver
        sendtestemail
        shell
        showmigrations
        sqlflush
        sqlmigrate
        sqlsequencereset
        squashmigrations
        startapp
        startproject
        test
        testserver
    创建第一个项目
    使用 django-admin.py 来创建 HelloWorld 项目:
    
    django-admin.py startproject HelloWorld
    创建完成后我们可以查看下项目的目录结构:

    目录说明:
    
    HelloWorld: 项目的容器。
    manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
    HelloWorld/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
    HelloWorld/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
    HelloWorld/settings.py: 该 Django 项目的设置/配置。
    HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
    HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
    接下来我们进入 HelloWorld 目录输入以下命令,启动服务器:
    
    python3 manage.py runserver 0.0.0.0:8000
    0.0.0.0 让其它电脑可连接到开发服务器,8000 为端口号。如果不说明,那么端口号默认为 8000。
    
    在浏览器输入你服务器的 ip(这里我们输入本机 IP 地址: 127.0.0.1:8000) 及端口号,如果正常启动,输出结果如下:

    视图和 URL 配置
    在先前创建的 HelloWorld 目录下的 HelloWorld 目录新建一个 views.py 文件,并输入代码:
    
    HelloWorld/HelloWorld/views.py 文件代码:
    from django.http import HttpResponse
     
    def hello(request):
        return HttpResponse("Hello world ! ")
    接着,绑定 URL 与视图函数。打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:
    
    HelloWorld/HelloWorld/urls.py 文件代码:
    from django.conf.urls import url
     
    from . import views
     
    urlpatterns = [
        url(r'^$', views.hello),
    ]

     

    注意:项目中如果代码有改动,服务器会自动监测代码的改动并自动重新载入,所以如果你已经启动了服务器则不需手动重启。
    path() 函数
    Django path() 可以接收四个参数,分别是两个必选参数:route、view 和两个可选参数:kwargs、name。
    
    语法格式:
    path(route, view, kwargs=None, name=None)
    route: 字符串,表示 URL 规则,与之匹配的 URL 会执行对应的第二个参数 view。
    
    view: 用于执行与正则表达式匹配的 URL 请求。
    
    kwargs: 视图使用的字典类型的参数。
    
    name: 用来反向获取 URL。
    Django2. 0中可以使用 re_path() 方法来兼容 1.x 版本中的 url() 方法,一些正则表达式的规则也可以通过 re_path() 来实现 。
    
    from django.urls import include, re_path
    
    urlpatterns = [
        re_path(r'^index/$', views.index, name='index'),
        re_path(r'^bio/(?P<username>w+)/$', views.bio, name='bio'),
        re_path(r'^weblog/', include('blog.urls')),
        ...
    ]
  • 相关阅读:
    BZOJ5194: [Usaco2018 Feb]Snow Boots(排序&set)(可线段树优化)
    BZOJ5280: [Usaco2018 Open]Milking Order(二分+拓扑)
    BZOJ5281: [Usaco2018 Open]Talent Show(01分数规划&DP)
    BZOJ4837:[Lydsy1704月赛]LRU算法(双指针&模拟)
    【NOIP2013】传染病控制
    bzoj 2754: [SCOI2012]喵星球上的点名
    bzoj 4197: [Noi2015]寿司晚宴
    Codeforces Round #438 B. Race Against Time
    Codeforces Round #438 C. Qualification Rounds
    Codeforces Round #438 D. Huge Strings
  • 原文地址:https://www.cnblogs.com/tszr/p/14392099.html
Copyright © 2020-2023  润新知