Django 创建项目流程

 

django 项目创建流程
1  创建项目
    cmd     django-admin startproject 项目名称
    pycharm   file -- new project -- Django -- 项目名字 -- 选择解释器 -- 输入app名称 -- 创建
2  启动项目
    cmd **
    切换到项目根目录下 manage.py
    python manage.py runserver             #127.0.0.1:8000
    python  manage.py runserver 80          # 127.0.0.1:80
    python  manage.py runserver 0.0.0.0:80    #  0.0.0.0:80
    pycharm **
    配置 点绿三角
3  urls.py  -- 地址和函数的对应关系
        from django.conf.urls import url
        from app01 import views

        urlpatterns = [
            url(r'^login/', views.login),
            url(r'^index/', views.index),
            url(r'^test/', views.test),
        ]
4  函数 def func(request):  接收一个参数 request 跟请求有关
    request.method 请求方式 GRT POST          类型字符串
    request.POST   form表单提交POST请求的数据   类型(类字典 Query DICT) {}   取值用get()不报错
    request.GET    url 上的参数                类型{同上}
  返回值
  from django.shortcuts import HttpResponse(str),render(页面),redirect(跳转页面)
        HttpResponse('显示的内容')  --> str                     #HttpResponse('ok')
        render (request,'html文件名')  -->  一个完整的html页面   #return render(request, 'index.html')
            'DIRS': [os.path.join(BASE_DIR, 'temp')]
        redirect('/要跳转的地址')                  -->重定向    # return redirect('/pubs/')
5  app 帮我们规范写法  可以多个app 功能分类
    创建app
        cmd     python manage.py startapp  app名称
        pycharm  tools ——》 run manage.py task ——》 startapp  app名称
    注册app
    settings.py -->
        INSTALLED_APPS = [
            'app01',
            'app01.apps.App01Config', #推荐
        ]
6   配置文件
    静态文件
        STATIC_URL = '/static/'  # 别名
    settings.py -->
        STATICFILES_DIRS = [
            os.path.join(BASE_DIR,'static'),
        ]

7 模板 TEMPLATES
    settings.py -->
        TEMPLATES
             'DIRS': [os.path.join(BASE_DIR, 'templates')]

    中间件:
    注释掉 'django.middleware.csrf.CsrfViewMiddleware'  #取消一个Django  报警403界面改变

8 form 表单
    1. action=‘’(向当前地址提交)  method='post'   action 提交的地址   method提交的方式(默认get)
    2. 所有的input标签要有name属性
    3. 要有一个type=submit input标签 或者  button按钮

9   get和post区别
        get获取一个页面  没有请求体
            提交数据 地址?k1=v1&k2=v2
            django如何获取  request.GET('')
        post 提交数据  一般不可见 url不显示
            django 如何取值 request.POST('')

 一个项目结构

*mydjango
  *app
        *migrations
        admin.py
        apps.py    里       from django.apps import AppConfig
                            class App01Config(AppConfig):
                                name = 'app01'
        models.py  里       from django.db import models
                            class 类名(models.Model):
                                字段 = models.AutoField(约束)
                                字段 = models.CharField(约束)  varchar()
                                def __str__(self):
                                    return self.name
                            terminal 里
                                python manage.py makemigrations  # 保存models变更记录
                                python manage.py  migrate  # 把变更记录同步到数据库中
        views.py   里
                            from django.shortcuts import render, redirect, HttpResponse
                            from app01 import models
                            def func(request):
                                return .....
    *mydjango
        __init__import pymysql
                            pymysql.install_as_MySQLdb()
        settings   里       INSTALLED_APPS    MIDDLEWARE(注释中间件)   TEMPLATES ('DIRS': [os.path.join(BASE_DIR, 'templates')])
                            DATABASES(数据库参数配置)  STATIC_URL
                            STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
        urls       里       from app01 import views   urlpatterns = [r'^publisher/', views.publisher  ]

    *static
        *css
        *js
        ...
    *templates
        模板.html
----前置* 说明此处是文件夹 ---

猜你喜欢

转载自www.cnblogs.com/zhangchen-sx/p/10279266.html