Django学习(基本流程)

Django版本 1.11.4

pip install Django==1.11.4

>>> import django
>>> django.get_version()

MTV设计模式(继承于MVC):


一、创建项目:

    1.在合适位置创建一个目录(最好不用中文)

    2.打开终端,cd到所创建的目录

    3.django-admin startproject project

    4.查看目录树状层级:tree  .  /F

    5.目录层级说明:i. manage.py(一个命令行工具,可以是我们用多种方式对Django项目进行交互)

                              ii. project目录:__init.py__(说明是一个Python包)

                                                      settings.py(项目的配置文件)

                                                      urls.py(项目的URL声明)

                                                      wsgi.py(项目与wsgi兼容的web服务器入口)

二、基本操作:

    1.设计表结构(数据库)

    2.启动数据库

    3.配置数据库(注意:Django默认使用sqlite数据库):在settings.py中,通过DATABASE选项进行配置;python3.x安装的是pymysql;在__init__.py文件中写入两行代码



三、创建应用(在一个项目中可创建多个应用,每个应用进行一种业务处理):

    1.打开终端,进入project目录

    2.执行python manage.py startapp myApp

    3.myApp目录说明:admin.py:站点配置

                                    models.py:模型

                                    views.py:视图

    4.激活应用:在settings.py 文件中将myApp应用加入到INSTALLED_APPS中

四、定义模型(一张数据表就对应一个模型类,表字段对应类属性):在models.py中定义模型。


说明:不需要定义主键,在生成时自动添加,并且值为自动增加。

五、生成数据表:

1.生成迁移文件<python manage.py makemigrations>,在migration目录下生成一个迁移文件,此时数据库中还没生成数据表 ;2.执行迁移<python manage.py migrate>,创建数据表。注意:当表有变动时,应删源文件并删库,再迁移。

        获得数据:类名.objects.all();  类名.objects.get(pk=2)

修改数据:类名.属性=修改值

保存:类名.save()

删除:对象.delete()  注意:物理删除,数据库中的表里的数据被删除了

获取关联对象的集合:对象名.关联的类名小写_set.all()

六、启动服务器(仅在开发测试中使用):<python manage.py runserver ip:port>  IP可以不写,代表本机IP;端口号

默认是8000,可修改

七、Admin站点管理:1.概述:内容发布,负责添加、修改、删除内容;公共访问

 2.配置:在settings.py文件中的INSTALLED_APPS中添加'django.contrib.admin'

3.创建管理员用户:执行<python manage.py createsuperuser>,依次输入用户名、邮箱、密码

4.汉化:修改settings.py文件:LANGUAGE_CODE = 'zh-Hans';  TIME_ZONE = 'Asia/Shanghai'

5.管理数据表:修改admin.py:from .models import 类名; admin.site.register(类名)

八、自定义管理页面:属性说明:1.列表页属性,list_diplay(显示字段)  list_filter(过滤)  search_fields(搜索)  list_per_page(分页)

  2.添加、修改页属性:fields(属性的先后顺序)  fieldsets(给属性分组)注意:不能同时使用

  3.关联对象

、视图的基本使用:

模板的基本使用

语法:{{ 变量 }}

  {%python 语句%}

  

猜你喜欢

转载自blog.csdn.net/qq_41191024/article/details/80056600