首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django在给定日期范围内筛选特定用户的薪资

Django在给定日期范围内筛选特定用户的薪资
EN

Stack Overflow用户
提问于 2022-07-02 11:58:53
回答 1查看 41关注 0票数 0

我有两个模特:

代码语言:javascript
复制
class MonthSalary(models.Model):
    month = models.DateField(null=True)

    def __str__(self):
        return str(self.month.year) + '/' + str(self.month.month)

class SalaryPerMonth(models.Model):
    user = models.ForeignKey(User, null=True, on_delete=models.CASCADE)
    salary_month = models.ForeignKey(MonthSalary, null=True, on_delete=models.CASCADE)
    main_salary_per_month = models.PositiveIntegerField(default=0, null=True)
    net_salary_per_month = models.PositiveIntegerField(default=0, null=True)

    class Meta:
        constraints = [
            models.UniqueConstraint(fields=["user", "salary_month"], name="all_keys_unique_together")]

    def __str__(self):
        return str(self.user.employeedetail.empcode) + ' ' + str(self.net_salary_per_month) + ' USD' + str(
            self.salary_month)

在视图中,我可以使用以下方式查询所有用户的薪资:

代码语言:javascript
复制
user = request.user
salary_per_month = SalaryPerMonth.objects.filter(user=user)

在MonthSalary模型中,我在筛选用户薪资时,添加了几个月\年份,顺序不是Ex "2022-2,2022-4,2022-1,2021-4“,方法是对日期”相关的salary_month字段“排序如下:

代码语言:javascript
复制
salary_per_month = SalaryPerMonth.objects.filter(user=user).order_by('salary_month')

这不太合宜。

Q1 =如何按年过滤?Q2 =如何按月订货?

EN

回答 1

Stack Overflow用户

发布于 2022-07-02 18:25:13

这就是我问题的第一部分"Q2“按月订购的答案

我所做的就是添加Meta类:

代码语言:javascript
复制
class Meta:
class MonthSalary(models.Model):
    month = models.DateField(null=True)

    class Meta:
        ordering = ['-month']


class SalaryPerMonth(models.Model):
    user = models.ForeignKey(User, null=True, on_delete=models.CASCADE)
    salary_month = models.ForeignKey(MonthSalary, null=True, on_delete=models.CASCADE)
    main_salary_per_month = models.PositiveIntegerField(default=0, null=True)
    net_salary_per_month = models.PositiveIntegerField(default=0, null=True)

    class Meta:
        ordering = ['-salary_month']
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72838860

复制
相关文章

相似问题

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