# DJGlearn **Repository Path**: favefan/DJGlearn ## Basic Information - **Project Name**: DJGlearn - **Description**: learn Django. - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-04-18 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DJGlearn ## Root dir destr djangoDemo/ ├── djangoDemo │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py └── manage.py 目录说明: 1. djangoDemo/djangoDemo: 项目最初的Python包 2. djangoDemo/init.py: 一个空文件,声明所在目录的包为一个Python包 3. djangoDemo/settings.py: 管理项目的配置信息 4. djangoDemo/urls.py: 声明请求url的映射关系 5. djangoDemo/wsgi.py: python程序和web服务器的通信协议 6. manage.py: 一个命令行工具,用来和Django项目进行交互,如前面创建项目就用到了该文件。 项目配置文件--setting.py ## App 接下来要引入一个APP的概念,举个例子我们需要开发一个电商网站,那么产品列表、购物车、下单等等这都是不同的业务线,我们可以把每条业务线都看做一个App。 ├── app_demo │ ├── __init__.py │ ├── admin.py │ ├── apps.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ └── views.py 目录结构 1. admin:对应应用后台管理配置文件 2. apps:对应应用的配置文件 3. models:数据模块,用于设计数据库等 4. tests:编写测试脚本 5. views:视图层,直接和浏览器进行交互 每次新建一个App我们需要将其在 项目目录中settings.py文件中的INSTALLED_APPS里进行注册,这样程序才能够找到这个服务 ## Hello World by Django 1. 视图层的编写 APP/view.py from django.http import HttpResponse ################################# django.http模块中定义了HttpResponse 对象的API 作用:不需要调用模板直接返回数据 HttpResponse属性: content: 返回内容,字符串类型 charset: 响应的编码字符集 status_code: HTTP响应的状态码 hello 为一个视图函数,每个视图函数必须第一个参数为request。哪怕用不到request。 request是django.http.HttpRequest的一个实例 ################################# def hello(request): return HttpResponse('Hello World') 2. URL编辑 PROJECT/urls.py # 导入url模块 from django.conf.urls import url urlpatterns = [ path('admin/', admin.site.urls), url(r'^hello/$', views.hello) ] APP/urls.py