Django2.2

Django

  1. 数据库《ORM《Model.py(控制数据库操作)《URL.py(访问起点控制路由)》 View.py(控制视图数据,即request和response数据,通过http传输)

4.创建项目,自动生成4个配置文件:
4.1 创建主项目 django-admin.py stratproject my_site
-manage.py;
-my_site:
init.py包;
–settings.py;
–urls.py;
–wsgi.py

4.2 创建子APP(应用)django-admin.py stratapp app01
-init.py 包;
-admin.py 数据库管理后台,连接数据库,django自带的用来进行数据库管理webapp
-apps.py django把想和app关联起来的文件,不用动
-models.py 数据库操作,创建数据库表结构migration迁移
-test.py 单元测试
-view.py 自己写的view框架中的业务逻辑
-migrations 记录文件

  1. ORM组件操作数据库,及model.py
    2.1 blog设计表 ,在models.py中修改
    form django.db import models
    class Account1(Models.model): #设计数据库表结构,但是不能创建库。
    “”“账户表1,…”""
    usernam=models.CharField(max_length=64,unique=Trud)
    email=…

    class Account2(Models.model): #设计数据库表结构。
    “”“账户表2,…”""
    usernam=models.CharField(max_length=64,unique=Trud)
    email=…

    2.3 在setting.py中设置数据库连接
    2.2.1 DATABASES={
    ‘default’:{
    ‘ENGINE’:‘django.db.backends.mysql’
    ‘NAME’:‘dataname’
    ‘USER’:‘datauser,root’
    ‘PASSWORD’:‘datauser’
    ‘HOST’:‘IP/domainname’
    ‘PORT’:‘3306’
    ‘’
    }

    }

2.2.2 在 INSTALLED_APPS=[

‘app01’,#加入app01,django同步工具migration会检测,只要app01的表结构发生变化就会自动同步。
]

2.4 创建表结构到数据库:
伪装mysql :在项目名下的 init.py 中加入以下内容
import pymysql
pymysql.install_as_MySQLdb()
2.5 映射数据库表,同步数据库表:(注意:它不能创建库),(在项目内执行)
python manage.py makemigrations #生成同步文件
python manage.py migrate #同步数据库文件,将数据库表自动应用到所有的表中应用中包括默认表和新建的app01的表。
2.6 多对多表的关联表:

  1. admin.py #管理数据连接数据库,django自带的用来进行数据库管理webapp
    4.1 django自己封装了一个admin应用,并自动做好了配置。
    4.2 为admin创建自己的管理账号和密码,非连接数据库的账号和密码。
    python manage.py createsuperuser
    按提示输入超级管理员的账号和密码。
    4.3 在自定义的APP01 中的 admin.py 中引入admin管理
    from app01 import models
    admin.site.register(models.Account) #注册自己设计的表

  2. URL.py
    5.1 urlpatterns=[
    re_path(r’路由名’,路由指向),
    re_path(r’路由名’,路由指向),
    re_path(r’路由名’,路由指向),
    re_path(r’路由名’,路由指向),

             ] # 路有名中支持正则表达式。
    

5.2 注册URL convert 在主URL中,设置自己的APP中的URL
register_covert(converters,FourDigitConverter,YYY),然后再 re_path(‘yyy/’,view.artiticle_year)
5.3 URL管理,当有多个子app时,在app中可以通过include方法,将app的url分开管理
复制顶级的URL,只保留 urlpatterns=[***] 加入本APP01内的 path(r’路由名’,路由指向),
修改顶级的urlpatterns=[***],加入:form django import include
urlpatterns=[
path(r’路由名’,路由指向),
#删除APP01的路由条目,加入下面这一条:
path(r"app01/",include(“app01”.urls)) #意思只要看到有APP01的路由,指向app01".urls,

            ] # 路有名中支持正则表达式。
  1. app01/view.py
    6.1 在view.py 定制各类应用函数。主要是通过 def 函数名(return):请求然后return response(内容)响应/render(request,‘form.html’)响应。(render 提供、回报、提交)
    6.1.1 form.html, 对应的是template下的html文件。
    6.2 在app01/URL.py中设定路由

  2. template 存放html的文件目录

  3. socket : if name ==" main": main() 主函数,系统调用函数
    定义 链接和地址 conn,addr=sock.accept. (现在有封装工具ORM直接用)

  4. 类,class继承, class 名称(父类名,不带括号):内容。 类中调用父类的直接写父类的方法/属性即可。 如:def get(self,request):return HttpResponse(“返回数据内容”)

  5. 启动django 服务器
    10.1.进入项目的目录下:运行 python manage.py runserver 0.0.0.0:8000

发布了23 篇原创文章 · 获赞 0 · 访问量 578

猜你喜欢

转载自blog.csdn.net/cbiexi/article/details/104471971