是否可以在Django中动态计算模型字段。我尝试使用替代保存模型,但这不是动态的:
class MyAdminView(admin.ModelAdmin):
def save_model(self, request, obj, form, change):
super(MyAdminView, self).save_model(request, obj, form, change)
Models.py
class JobRequest(models.Model):
User=models.ForeignKey(user, on_delete = model.CASCADE)
organization=models.CharField(max_length =150)
email=models.EmailField(max_length =150)
country= models.CharField(max_length =150)
state=models.CharField(max_length =150)
offer=models.BooleanField(default =True)
active = models.IntegerField(max_length =150)
present=models.IntegerField(max_length =150)
我正在建立一个用户申请职位的网站。我希望现在字段计算用户提交工作请求的次数,并希望活动字段计算用户获得的报价的数量。
答案 0 :(得分:1)
您想要的内容不应该是JobRequest
模型上的字段,因为它可以很容易地从数据库中检索到。理想情况下,这应该是您的User
模型上的属性,因为它属于用户。但您也可以将其设为JobRequest
实例的属性:
@property
def present(self):
return self.__class__.objects.filter(user=self.user).count()
@property
def active(self):
return self.__class__.objects.filter(user=self.user, offer=True).count()