zoukankan      html  css  js  c++  java
  • Django 创建第一个项目

    本章我们将介绍Django 管理工具及如何使用 Django 来创建项目,第一个项目我们以 HelloWorld 来命令项目。

    测试版本说明:

    • Python 3.6.0

    • Django 2.1.7

    创建第一个项目

    使用 django-admin 来创建 HelloWorld 项目:

    django-admin startproject HelloWorld

    创建完成后我们可以查看下项目的目录结构:

    $ cd HelloWorld/
    $ tree
    .
    |-- HelloWorld
    |   |-- __init__.py
    |   |-- settings.py
    |   |-- urls.py
    |   `-- wsgi.py
    `-- manage.py

    目录说明:

    • HelloWorld: 项目的容器。
    • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
    • HelloWorld/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
    • 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 目录新建一个 view.py 文件,并输入代码:

    HelloWorld/HelloWorld/view.py 文件代码:
    from django.http import HttpResponse
     
    def hello(request):
        return HttpResponse("Hello world ! ")

    整个目录结构如下:

    $ tree
    .
    |-- HelloWorld
    |   |-- __init__.py
    |   |-- __init__.pyc
    |   |-- settings.py
    |   |-- settings.pyc
    |   |-- urls.py              # url 配置
    |   |-- urls.pyc
    |   |-- view.py              # 添加的视图文件
    |   |-- view.pyc             # 编译后的视图文件
    |   |-- wsgi.py
    |   `-- wsgi.pyc
    `-- manage.py

    完成后,启动 Django 开发服务器,并在浏览器访问打开浏览器并访问:

    我们也可以修改以下规则:

    HelloWorld/HelloWorld/urls.py 文件代码:
    from django.urls import path
     
    from . import view
     
    urlpatterns = [
        path('hello/', view.hello),
    ]

    通过浏览器打开 http://127.0.0.1:8000/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')),
        ...
    ]
  • 相关阅读:
    Tensorflow2(预课程)---7.5、cifar10分类-层方式-卷积神经网络-VGG16
    卷积神经网络之AlexNet
    上传大型视频文件到服务器的控件
    上传大型视频文件到服务器的组件
    上传大型视频文件到服务器的工具
    Nginx上传大型视频文件到服务器,解决方案
    百度WebUploader上传大型视频文件到服务器,解决方案
    WebUploader上传大型视频文件到服务器,解决方案
    html5上传大型视频文件到服务器,解决方案
    jquery上传大型视频文件到服务器,解决方案
  • 原文地址:https://www.cnblogs.com/hzjdpawn/p/11690107.html
Copyright © 2011-2022 走看看