如何获取相关模型';django滤波器的s域
下面是一个场景。我获取用户id并执行名为generated的筛选器。我想按检查顺序显示C类的所有值 这是我的模特如何获取相关模型';django滤波器的s域,django,django-models,django-views,Django,Django Models,Django Views,下面是一个场景。我获取用户id并执行名为generated的筛选器。我想按检查顺序显示C类的所有值 这是我的模特 class A(models.Model): tob = models.ForeignKey(B) def something(self, user): return A.objects.filter(to_b=user) class B(models.Model): bid = models.AutoField(primary_key=T
class A(models.Model):
tob = models.ForeignKey(B)
def something(self, user):
return A.objects.filter(to_b=user)
class B(models.Model):
bid = models.AutoField(primary_key=True)
name = models.CharField(max_length=50)
class C(models.Model):
name = models.CharField(max_length=50)
tobid = models.ForeignKey(B)
check = models.datetimeField()
以下是我的视图.py:
def generated(request,user_id):
f= A()
p = f.something(user_id)
我可以执行一个for循环,该循环将获得C类的所有值
从C获取价值的我的观点
for des in p:
des_list = des.tob.bid
des_list_final = C.objects.filter(tobid = des_list)
但这里的问题是,每次它从B获取一个id并对C执行过滤。但这不会通过检查给出C顺序的值。你知道如何克服这个问题吗
我想按检查顺序显示C类的所有值
C.objects.filter(tobid\uu id\uu in=[des.tob.bid.pk for des in p])。订购人('-check')
如果要永久设置订单,请使用:
可能我无法澄清我的问题..我知道使用order_by..但问题在于我的for循环..它每次都获取单个b_id的所有C(order by check)值。。(因此,如果第一个b_id为1,12月11日和10月10日各有一张支票,那么它将依次出现。然后通过第二次投标,11月11日的支票将出现在第3位)……但我不想要这个……我想按照日期顺序显示支票……我不确定我是否能澄清我自己。
class C(models.Model):
class Meta:
ordering = ['-check']