gpt4 book ai didi

python - 如何在 Django 管理中输入一定数量的条目后限制管理输入?

转载 作者:行者123 更新时间:2023-12-01 07:04:27 25 4
gpt4 key购买 nike

我已经学习 django 大约 1 个月了,同时来到 django admin 我想限制来自 admin 的数据条目不超过 5 个,这样当我想在网页上显示模型数据库时不超过 5 个,你能帮忙吗如果这太基础了,我很抱歉我的模型是

class Top5Restaurants(models.Model):
Restaurants=models.CharField(max_length=20)

def __str__(self):
return( self.Restaurants)
class Meta:
verbose_name = 'Top 5 Restaurant'
verbose_name_plural = 'Top_5_Restaurants'

现在我不想从管理界面输入超过 5 个餐厅条目,如果管理员尝试输入超过 5 个条目,我希望阻止条目选项,直到管理员删除其中一个输入的数据库。

最佳答案

您可以通过 validating the model instance that is being created/edited 限制模型(此处为 Top_5_Restaurants)可以拥有的实例数量。另请注意,pk 属性在实例创建期间设置为 None(相对于实例更新)

class Top_5_Restaurants(models.Model):
def clean(self):
if (Top_5_Restaurants.objects.count() >= 5 and self.pk is None):
raise ValidationError("Can only create five Top_5_Restaurants instances. Try editing/removing one of the existing instances.")

(一个有用的提示:通常模型类以 PascalCase 命名,模型字段以 CamelCase 命名)

关于python - 如何在 Django 管理中输入一定数量的条目后限制管理输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58496761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com