首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Django查询集过滤器并获取最后一项和第一项

Django查询集过滤器并获取最后一项和第一项
EN

Stack Overflow用户
提问于 2020-09-17 17:03:42
回答 1查看 75关注 0票数 0
代码语言:javascript
运行
复制
first_order = Order.objects.filter(user_id=request.user).first()
last_order = Order.objects.filter(user_id=request.user).last()

我试过了,但两者都显示了相同的东西

models.py

代码语言:javascript
运行
复制
class Order(models.Model):
    class Meta:
        ordering = ('-order_date1',)

 
    STATUS = (
        ('Return', 'Return'),
        ('Out for delivery', 'Out for delivery'),
        ('Delivered', 'Delivered'),
        ('new order', 'new order'),
        ('hold', 'hold'),

        )


    order_id= models.CharField(max_length=120, blank= True)
    user = models.ForeignKey(User,on_delete=models.CASCADE, null=True, blank=True)
    date_created = models.DateTimeField(auto_now_add=True, null=True)
    status = models.CharField(max_length=200, null=True , choices=STATUS, default='new order',blank=True)
    note = models.CharField(max_length=1000, null=True,blank=True)
    receiver_name= models.CharField(max_length=100)
    receiver_address= models.CharField(max_length=200)
    receiver_phone = models.CharField(max_length=50)
    order_number = models.CharField(max_length=50)
    condition= models.IntegerField(blank=True,default=0,null=True)
    order_date1 = models.DateField(auto_now_add=True,null=True)
    delivery_cost = models.IntegerField(default=60,null=True,blank=True)
    def __str__(self):
        return self.user.username
EN

回答 1

Stack Overflow用户

发布于 2020-09-17 17:49:08

您的结果实际上是不同的,但是您为它们显示了相同的信息。

在您的类顺序中,问题出在__str__的定义上。尝试:

代码语言:javascript
运行
复制
def __str__(self):
    return '{} - {}'.format(self.order_id, self.user.username)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63934725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档