美文网首页
Django Model运行时关联表

Django Model运行时关联表

作者: 十三流 | 来源:发表于2017-02-10 17:48 被阅读0次

场景

现在数据库中,有些表 每个商户单独存一张表,例如支付表payment_xxx,payment_yyy,payment_zzz分表标示3个商户的支付记录,在记录数据的时候,采用了原生的sql记录,后来在做报表的时候,总是觉得,要是可以用ORM就简单多了啊。

解决办法

添加一个manage=False的Model,并在view中指定db_table,就可以用这个Model进行关联表的查询了,例如

class Payment(models.Model):
    #fields

    class Meta:
        managed = False
        db_table='payment'  #任意指定的一张不存在的表 

在veiw中就可以这样使用了

Payment._meta.db_table="payment_xxx"
Payment.objects.filter()

备注

一个Model Class暂时只能指定一次_meta.db_table的值,再次指定是无效的,如果要同时处理多个表,则不能使用此方法。

相关文章

网友评论

      本文标题:Django Model运行时关联表

      本文链接:https://www.haomeiwen.com/subject/tcxnittx.html