• Django创建第一个应用


    Django创建第一个应用

    1,创建应用

    Django自带一个实用程序,可以自动生成应用程序的基本目录结构,因此您可以专注于编写代码而不是创建目录。

    要创建您的应用程序,请确保您与目录位于同一目录,manage.py 并键入以下命令:

    python3 manage.py startapp myweb
    

    这将创建一个目录myweb,其目录如下:此目录结构将容纳轮询应用程序。

    [root@localhost demo]# tree mysite/
    mysite/
    ├── manage.py
    ├── mysite
    │ ├── init.py
    │ ├── settings.py
    │ ├── urls.py
    │ └── wsgi.py
    └── myweb
    ├── admin.py
    ├── apps.py
    ├── init.py
    ├── migrations
    │ └── init.py
    ├── models.py
    ├── tests.py
    └── views.py

    2,创建视图

    Django具有“视图”的概念来封装负责处理用户请求和返回响应的逻辑。

    在myweb/views.py

    from django.shortcuts import render
    from django.http import HttpResponse
    
    # Create your views here.
    
    # 定义视图函数,业务逻辑
    def index(request):
    
        # 返回一句话
        return HttpResponse('Hello World!!!')
    

    3,修改root路由 mysite/urls.py

    当用户使用django提供的站点进行访问时,首页由路由进行匹配访问地址,然后指定函数或子路由进行处理

    from django.conf.urls import url,include
    from django.contrib import admin
    
    urlpatterns = [
        # url(r'^admin/', admin.site.urls),
        url(r'^', include('myweb.urls')),
    ]
    

    4,在应用下创建子路由

    from django.conf.urls import url
    from . import views
    
    urlpatterns = [
        url(r'^hello/',views.index),
    ]
    

    5,通过浏览器访问服务

    注意:url路由,由上而下 进行匹配,如果在上面就匹配成功,则不会向下匹配

    通过浏览器访问服务
        127.0.0.1:8000/abc ==>  root url(根路由) ==> 加载子路由(myweb/urls.py)
    
        ==> 正则匹配访问的路径(path) =-=> 视图函数(views.index)
    
        ==> views.py index() 响应内容
    

    6,使用模板

    作为Web 框架,Django 需要一种很便利的方法以动态地生成HTML。

    最常见的做法是使用模板。

    模板包含所需HTML 输出的静态部分,以及一些特殊的语法,描述如何将动态内容插入。

    在当前manage.py的同级目录中创建一个文件夹 templates/index.html
    
    在settings.py文件中 TEMPLATES模块设置选项
    
    'DIRS': [os.path.join(BASE_DIR,"templates")],
    
    在子路由中添加一个路由
    url(r'^tmp$',views.tmp,name='myweb_tmp'),
    
    在views.py 创建一个 tmp的视图函数
    
    def tmp(request):
        # 加载一个模块
        return render(request,'index.html')
        

    如果在视图函数加载模板时,分配了数据,就可以在模板中使用数据

    def tmp(request):
      # 实例化 模型对象,获取数据
    
      # 分配数据,
      context = {'info':'aabbccddee'}
      # 加载一个模块
      return render(request,'index.html',context)
    
    
    在html模板中输出变量 输出 
    
     <h3>加载数据</h3>
     <p></p>    
    
  • 相关阅读:
    第二章 装配Bean
    JAVAScript中DOM与BOM的差异分析
    前端中的命名规则
    用产生随机数的方法加上鼠标事件实现点击生成彩色积木
    关于AngularJs中监听事件及脏循环的理解
    前端工程师面(笔)试题部分汇总
    Js中获取显示器、浏览器以及窗口等的宽度与高度的方法
    实现选项卡切换的三种方式
    对于前端浅显理解
    js程序开发-3
  • 原文地址:https://www.cnblogs.com/victorfengming/p/11930968.html
Copyright © 2020-2023  润新知