Py学习  »  Shakil  »  全部回复
回复总数  7
6 年前
回复了 Shakil 创建的主题 » Django查询链接多个筛选器

你的链接过滤器看起来几乎是正确的,但我猜你搞乱了过去30天的部分过滤。

schedules = Schedule.objects.filter(sport=sport).filter(date__lt=date.today()).filter(
                        date__gte=(date.today() - timedelta(days=30))).order_by("date").exclude(tournament__bias=0.0)

默认情况下,包中只包含Python模块和包。因此,要添加其他文件和文件夹,我们需要创建MANIFEST.in文件。就像我们的案子 MANIFEST.in 模板文件夹应包含为

recursive-include your_app/templates *

如果我没有错,只要用户有 newLeave 要调整的条目 LeaveBalance 模特的 Leave_current_balance 新叶 Total_working_days . 在我看来事实上没有必要 leave_balance 在里面 新叶 模型。你可以简单地调整 新叶 模型信号(如果您不知道django信号,请通过这些链接 link1 link2 ).

新叶 模型保存后的信号我们可以调整特定用户的 保留当前余额 如下所示。

from django.db.models import F
from .models import NewLeave, LeaveBalance
@receiver(post_save, sender=NewLeave)
def update_leave_balance(sender, instance, **kwargs):
    leave_balance_object = LeaveBalance.objects.get(user=instance.user_id)
    leave_balance_object = F('Leave_current_balance') - instance.Total_working_days
    leave_balance_object.save()
6 年前
回复了 Shakil 创建的主题 » 发送刷新和访问令牌的django api

如果不销毁你先前生成的令牌,我认为这是不可能的。如果每次登录此处时都需要新的authToken,可以首先确保销毁先前的令牌并创建新的令牌。

 from django.core.exceptions import ObjectDoesNotExist
 try:
     token = Token.objects.get(user=user)
     token.delete()
     token = Token.objects.create(user=user)

 except ObjectDoesNotExist:
     token = Token.objects.create(user=user)
6 年前
回复了 Shakil 创建的主题 » 在django中如何生成6位字符串作为主键

可能的方法之一是 UUIDField link 但是如果你使用这个的默认版本。它将是32位唯一的uuid号。

另一种可能的覆盖方式 save 方法和使用django的helper函数 get_random_string link 生成6位唯一字符串。我必须提到这种类型的uuid的冲突是(52位字母^6),你必须意识到这一点。

from django.utils.crypto import get_random_string

class MyCustomModel(models.Model):
    custom_primary_key = models.CharField(max_length=6, primary_key=True, editable=False, unique=True)

     def save(self, *args, **kwargs):
        if not self.custom_primary_key:
            self.custom_primary_key = get_random_string(6)
        return super(MyCustomModel, self).save(*args, **kwargs)
6 年前
回复了 Shakil 创建的主题 » django模型中的日期数组

Django 2.1 documentation 详细说明如何使用数组字段。

6 年前
回复了 Shakil 创建的主题 » 如何在Django Admin显示数据

您需要向管理员注册相关模型。浏览官方文档,你可以学习如何做到这一点。 Link