一.知识点 1.source title = serializers.CharField(source='courses.title') source用于one2one.foreginkey.choices,用与获取一个结果 2.SerializerMethodField title = serializers.CharField(source='courses.title') recommend_courses = serializers.SerializerMethodField() cha
1.利用Django的view实现返回json数据 from django.views.generic import View from goods.models import Goods class GoodsListView(View): def get(self,request): #通过django的view实现商品列表页 json_list = [] #获取所有商品 goods = Goods.objects.all() for good in goods: json_dict = {
查询范围scope在model中定义,在controller中使用 namespace app\index\model; use think\Model; class User extends Model { // 查询条件为 name = 'thinkphp' ,且只查询 id 和 name两个字段 protected function scopeThinkphp($query) { $query->where('name','thinkphp')->field('id,name'); }
model中需use traits\model\SoftDelete; // 数据表中需添加一个 delete_time 字段保存删除时间 namespace app\index\model; use think\Model; use traits\model\SoftDelete; class User extends Model { use SoftDelete; protected static $deleteTime = 'delete_time'; // 5.2版本之前必须用stati
当abstract=True时,这个model就变成了abstrct base class,那这个基类有什么特性呢? 当某一model中设置了abstract=True时,就会使该model中的字段都不会产生对应的表,而是可以作为基类加入到其他model中 那有什么用呢? 有时多个model有些相同的字段,这样很浪费时间,而且重复本身也不利于代码简洁.好该abstract来了 看官例: from django.db import models class CommonInfo(models.Mo