我有三個表User,Users_clients和Credits。 我想列出當前用戶的客戶的詳細信息和信用。 如果有任何客戶在信用表中列出,那麼信用應該返回0,否則應該返回信用值。django三個表內的反向查詢查詢
我model.py是
class User_clients(models.Model):
user = models.ForeignKey(User, related_name='myuser')
client = models.ForeignKey(User, related_name='myclient')
class Credits(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
credit = models.IntegerField(null=True, default=0)
我views.py是
def clients(request):
try:
data = User_clients.objects.order_by('-id').filter(user_id=request.user.id)[0:10]
except User_clients.DoesNotExist:
data = None
return render(request, "client_list.html",{'title':"Client List",'clients':data,'active':'myclients','open':'clients'})
非常感謝提前!您的評論後
你不應該使用'User_clients',但你應該在用戶添加一個字段:'客戶= models.ManyToManyField( '用戶')',那麼,你可以做'data = User.objects.get(id = request.user.id).clients.all()' – Blusky