•  1、Django 安装
    •   1、django 的版本介绍   

      •   在django 的官方网站上可以看到很多版本的django  但是下载的时候一定要注意下载LTS版本的。这个代表这个版本的一个长期维护的版本,其他版本不是不能下载只是有可能会出现问题。
    • 2、安装

      •  使用命令安装  
      •           pip install Django ==1.11.11
      •          pip install django==1.11.11 -i https://pypi.tuna.tsinghua.edu.cn/simple
      • 使用命令卸载
      •   pip uninstall django
      •  

 

    • 3、创建一个django 项目
      •   使用命令创建
        •   django-admin startproject  项目名称
      • 使用pycharm 创建

          •   File -->new project 项目名称
          •  
          •  
          •  
          • Django 建立项目步骤_数据库
    • 4、启动Django 项目
      • 1、在命令行启动一个Django 
        • 控制台 或者是terninal   中 切换的项目的目录输入 python manage.py runserver  不写端口是默认8000
        • python manage.py runserver 8080
        • 1. 进入项目的根目录
          2. 执行:python manage.py runserver 127.0.0.1:8080
                          停止:Ctrl + C
      • 2、在pycharm 中可以默认设置启动项目
      • Django 建立项目步骤_mysql_02
      • 选择自己的django 以后点击启动 ,只要启动以后在以后的更新以后django 会自动将项目进行更新启动。
      • 同样在这个 下啦列表中还有一个选项是可配置项目的端口等
      • Django 建立项目步骤_python_03
      • 3、目录结构
                        1. 见群内截
      • 4、配置文件 mysite/settings.py 
                        1. BASE_DIR  --> 项目的根目录
        • 静态文件的配置
          • 所有的静态文静都要放在static  这个文件中,做好设置以后偶 django 使用render 返回一个页面的时候会把 给页面配置的static 的默认路径替换成 配置的路径。
          •  
          • STATIC_URL = '/static/'
            STATICFILES_DIRS = [
                os.path.join(BASE_DIR, 'static'),
            ]
        • app 的注册
          • APP(项目中的一个包)
                        1. Django中创建app:
                            python manage.py startapp app名
                        2. 注册到Django中:
                            settings.py中的INSTALLED_APPS = ['app名',]
              • Django 建立项目步骤_django_04
          •  
        • templates  这个文件夹如果是使用命令创建的时候是没有的,需要我们手动的创建,同时我们需要在settings 中进行配置,
        •  这里的额DIRS 在settings  前面几行就已经说明了 就是指的这个项目的路径
          'DIRS': [os.path.join(BASE_DIR, 'templates')]    
          • TEMPLATES = [
                {
                    'BACKEND': 'django.template.backends.django.DjangoTemplates',
                    'DIRS': [os.path.join(BASE_DIR, 'templates')]
                    ,
                    'APP_DIRS': True,
                    'OPTIONS': {
                        'context_processors': [
                            'django.template.context_processors.debug',
                            'django.template.context_processors.request',
                            'django.contrib.auth.context_processors.auth',
                            'django.contrib.messages.context_processors.messages',
                        ],
                    },
                },
            ]
        •  
  •  2、Django 项目
    • 2.1 网页中的form 表单提交数据的三个要素
      • 1 form 标签必须是有action 和method 属性
      • 2 所有获取用户输入的标签必须放入form 标签中。同时必须有name 属性。后端可以根据name 属性获取输入的内容。。
      • 3 必须使用submit 按钮、
    • 2.2 Django 基础三件套
      • 1、HttpRespons   返回指定的字符串
      • 2、render 返回一个HTML 文件
      • 3、redirect  跳转到指定的一个页面
    • request 相关的属性
      • 1、request.method    返回的是请求的方法(全大写)GET  POST.....
      • 2、requset.GET           返回的是URL里的参数。类似于字典的数据结构、
      • 3、request.POST        返回的是post 提交的数据 类似于字典的数据结构、、
    • Django 的模板语言
      • {{ 变量名 }}
    • Django ORM 的使用
      • 作用就是 操作数据表    操作数据行
      • 使用
        • 1、启动mysql 数据库以后手动创建一个数据库
          • create database 数据库的名称
          • create database mysite;
        • 2、在settings 中找到DATABASE  注释掉原来的默认的数据链接是链接的sqlite3 
        • Django 建立项目步骤_根目录_05
        • 重新进行设置、
        • DATABASES = {
              'default': {
                  'ENGINE': 'django.db.backends.mysql',
                  'NAME': 'mysite',
                  'HOST':'127.0.0.1',
                  'PORT': 3306,
                  'USER': 'root',
                  'PASSWORD':'123456'
              }
          }
        • 3、用什么连数据库?
                          利用第三方的包,比如第三方包:pymysql和MySQLdb
                          告诉Django用pymysql模块代替默认的MySQLdb去连接MySQL数据库
                          和settings.py同级的__init__.py文件,写上:
                          import pymysql
                          pymysql.install_as_MySQLdb()
        • 4、在app/models.py的文件中创建类
                          类必须继承models.Model
          • class User(models.Model):
                id = models.AutoField(primary_key=True)
                user = models.CharField(max_length=32)
                password = models.CharField(max_length=24)
            
        • 5. 另个命令
                          1. python manage.py makemigrations   --> 找个小本本把models.py的变更记录一下
                          2. python manage.py migrate          --> 把上面的变更记录翻译成SQL语句,去数据库执行
  •