2020/03/11 02-博文接口、Model类实现和迁移、URL配置

前面已经把最主要的业务完成了,把后端django的做完,就可以做前端的事情了,现在暴露的全是接口,像现在做的功能接口设计,这个就是restful风格接口设计,将这样的接口暴露给前端,让他们去调用,前段实际上是通过接口来调用你的模拟服务器,没有真正查数据库数据,就是写好的测试数据,一调用出结果,就是假数据,一测试OK,这个接口前端也就写好了

‘作为后端的话好说,可以用postman自己构造数据,然后连接,测试你view函数能否正确返回结果,前后端各自做各自的开发,最后一拼,再组联合的测试,这时候看功能是否完整的调用

user写差不多了,现在要写post,写博客相关的了,增就是发布,改,跟发布没什么区别,改也需要先查后改,假删除是修改其中一个字段。
查具体一个文章,就是一个文字的detail,查询文章列表页l

现在设计接口,如何让别人增加一个文章,post

2020/03/11 02-博文接口、Model类实现和迁移、URL配置

查需要id,这是第三种方式,在url已经把信息说清楚了,这是restful的url设计,也可以post /跟,get/跟,相当于联合主键,get/拿到数据,post/上传数据

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
get /id就拿指定id的文章,/就代表all2020/03/11 02-博文接口、Model类实现和迁移、URL配置
凡是修改就看是不是put方法,get方法拿一个和拿全部可以通过 url来区分,这一套接口设计就是restful风格
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
对应的方法和url,函数名就是我们要写的view函数,get所有就写/,函数名是getall2020/03/11 02-博文接口、Model类实现和迁移、URL配置写应用需要先创建应用 startapp post
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
准备迁移

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
迁移之前需要先建立model,用models下的Model构建模型。
创建id主键,title标题,postdate上传日期,作者需要是个外键,到user表上的user

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
点击foreignkey,后面还可以写

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
真正使用的字段名是什么,就需要观察
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
repr是必须写,还需要写个str,因为后台管理看不出来,需要把str也写上

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
还要内容表content,onetoonefield类似外键但是是一对一的,在这里的好处是,id不写会自己建一个,所以id故意不写
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
下面开始迁移
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
要在settings里加一下

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
再次迁移
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
这里就是生成的文件

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
content里有个onetoone的,一对一的关系,两边id是一摸一样
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
迁移一下,动词migrate
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
看post报表信息对不对
2020/03/11 02-博文接口、Model类实现和迁移、URL配置

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
author这里进行了变化,外键关联到主键上了

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
自己链接到了主键id上,自己生成了author_id这样的key作为索引,提高效率
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
content没写id,就自增了一个2020/03/11 02-博文接口、Model类实现和迁移、URL配置
post也是onetoone

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
建立了一个外键约束,数据库其实支持有多的冗余字段,加了个id
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
2020/03/11 02-博文接口、Model类实现和迁移、URL配置

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
下面配置一下路由,按照这里来配置
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
可以偷懒直接复制过去

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
django这里有点不好,都对应 跟,用哪个方法就区分不来,所以为什么要强制加个/pub的原因,也就是到了view里面做判断才去分,这一点没有flask灵活,flask可以直接在方法上配置路由,可以指定方法。同一个路径方法不同,可以调度到不同的view函数上去
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
d+是正则表达式,以数字开头数字结尾,因为id号都是整数
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
2020/03/11 02-博文接口、Model类实现和迁移、URL配置
在view函数里写几个东西出来

2020/03/11 02-博文接口、Model类实现和迁移、URL配置
在这里加上,这样就齐全了,路由配置了,model写好了,剩下就是写功能
2020/03/11 02-博文接口、Model类实现和迁移、URL配置