zoukankan      html  css  js  c++  java
  • Django创建应用一

    Django 是一个高度模块化的框架

    一个项目由很多应用组成,这些应用分为

      内置的:自带的应用,如 admin(后台管理)、auth(身份鉴权)、sessions(会话管理)等

      自定义的:实现自己业务逻辑的应用

      第三方的:社区提供的应用

    所有的 Django 应用都在 mydjango/settings.py 的 INSTALLED_APPS 列表中定义

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
    ]

    django.contrib.admin -- 管理员站点
    django.contrib.auth -- 认证授权系统
    django.contrib.contenttypes -- 内容类型框架
    django.contrib.sessions -- 会话框架
    django.contrib.messages -- 消息框架
    django.contrib.staticfiles -- 管理静态文件的框架

    补充:

      项目和应用的区别?

      应用是一个专门做某件事的网络应用程序——比如博客系统

      项目则是一个网站使用的配置和应用的集合项目可以包含很多个应用

      应用可以被很多个项目使用

    创建应用

    在 Django 中,每一个应用都是一个 Python 包,并且遵循着相同的约定。

    Django 自带一个工具,可以生成应用的基础目录结构

    (1)创建应用

    eg:创建应用blog

    python manage.py startapp blog

    生成的目录结构为

    blog                     // blog应用目录
    ├── __init__.py          // 初始化模块
    ├── admin.py             // 后台管理配置
    ├── apps.py              // 应用配置
    ├── migrations           // 数据库迁移文件目录
    │   └── __init__.py      // 数据库迁移初始化模块
    ├── models.py            // 数据模型
    ├── tests.py             // 单元测试
    └── views.py             // 视图

    (2)视图View

    blog/views.py

    from django.shortcuts import render
    
    from django.http import HttpResponse
    
    def index(request):
        return HttpResponse("Hello,you're at the blog index.")

    (3)路由

    Django路由系统是由全局路由和子应用路由组成

    根据用户输入的 URL,全局路由表进行匹配并选择正确的子应用路由,再由所选择的子应用路由匹配并选择正确的 View

    A.将View接入路由

    添加 blog/urls.py

    from django.urls import path
    
    from . import views
    
    urlpatterns = [
        path('', views.index, name='index'),
    ]

    B.接入全局路由表

    修改 mydjango/urls.py

    from django.contrib import admin
    from django.urls import include, path
    from . import view
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', view.index,name='home'),
        path('blog/', include('blog.urls')),
    ]

    启动服务器,http://localhost:8000/blog/

    输出

      Hello,you're at the blog index.

  • 相关阅读:
    常见的位运算技巧总结(膜wys)
    BZOJ1878:[SDOI2009]HH的项链
    BZOJ4300:绝世好题
    BZOJ1298:[SCOI2009]骰子的学问
    BZOJ2748:[HAOI2012]音量调节
    BZOJ1951:[SDOI2010]古代猪文
    BZOJ1002:[FJOI2007]轮状病毒
    BZOJ1081:[SCOI2005]超级格雷码
    BZOJ2595:[WC2008]游览计划
    BZOJ1190:[HNOI2007]梦幻岛宝石
  • 原文地址:https://www.cnblogs.com/baby123/p/12094715.html
Copyright © 2011-2022 走看看