Django获取多个表中相同字段


在使用Django中,建立了很多的数据模型,希望从每个模型中获取相同的字段,是否有比较方便的方法? 就是相当于从多张表中,获取相同的字段。例如从tableA,tableB,tableC中获取id,name字段。 现在是通过前台传过来的值,通过if else的方式一个一个的写。 是否有类似变量作为models模型的名称的方法?

  • 2 条回复 | 2 人参与
  • 不是特别清楚你的需求,你的意思是觉得不断调用 Model.objects.filter(id=id, name=name) 不大方便么?你可以定义一个方法:

    def get_objects(model, **kwargs):
        return model.objects.filter(**kwargs)
    
  • 是这样的,因为Models.object.filter(id=id,name=name)这个语句中,Models有大概40-50个,导致每次都需要判断一下是哪个Models,是否有一个变量,我直接赋值这个变量,可以直接使用例如 (models).objects.filter(id=id,name=name) 这个models是否可以是python的一个变量,这样可以把这个模型的名称存在数据库,直接调用。

添加一条新回复
登录 或者 注册 后发表回复