Django框架 day03

今日内容:
1.图书管理系统表设计

2.django请求生命周期

3.路由层

4.视图层

一.表与表之间建立关系

就以这个图书管理系统为例:
   书籍表
    出版社表
    作者表

书籍和出版社是一对多,外键字段建在书籍表中
书籍和作者是多对多,需要第三张表来记录多对多关系

django  orm中表与表之间建关系
1.一对多的外键关系
publish = models.ForeignKey(to='Publish')
# to表示的就是跟哪张表是一对多的关系   默认都是跟表的主键字段建立关系
2.多对多关系
authors = models.ManyToManyField(to='Author')
 # 不会在表中生成authors字段 该字段是一个虚拟字段 仅仅是用来告诉django orm自动帮你创建书籍和作者的第三张关系表
3.一对一关系
 author_detail = models.OneToOneField(to='AuthorDetail')

注意!!!!:
1.一对多 和 一对一会自动再字段后面加_id。
2.但是多对多,不会产生实际字段,只是告诉django orm 自动创建第三张表

二.django的请求生命周期

三.路由层

url()方法里面第一个参数,是一个正则表达式
 url(r'^admin', admin.site.urls),
 url(r'^adminqwe',views.login ),
不加上斜杠的话,一旦前面的正则表达式匹配到了的内容,就不会再往下继续匹配,而是直接执行对应的视图函数
ps:正式由于上面的特性,当你的项目特别庞大的时候,url的前后顺序也是你需要考虑可能会出现url错乱的情况
url(r'^login/$',views.login) 这样写的话以什么开头以什么结尾,一般都是这样写

猜你喜欢

转载自www.cnblogs.com/zahngyu/p/11535637.html