我需要一些清晰的思考如何处理django模型上的保存功能。正如你在下面看到的,我对如何优雅地做这件事感到不知所措。我想将整个对象传递给另一个模块并在那里分析它。我的动机是分析分析,而不是在models.py中,我会经常改进分析位。谢谢。处理django模型对象的最佳方式是什么?
models.py
from test_app.spam_analyzer import spam_checker
class SharedLink(models.Model):
link = models.URLField()
submitters_ip = models.IPAddressField()
flag = models.CharField()
def save(self, *args, **kwargs):
self.flag = spam_checker(self)
super(SharedLink, self).save(*args, **kwargs)
spam_analyzer.py
from test_app.models import SharedLink #this causes a "field not found" error
def spam_checker(SharedLink)
submitters_ip = SharedLink.submitters_ip
# see if this user's ip appears on a spam list
# if it does flag it 'spam'
return flag
罗斯曼先生和米先生的答案都可能是正确的。我最终不是以模型或形式来做,而是在视图中。 通过硬币翻转我给罗斯曼先生的答案。他还提到了关于通告的正确信息。 – user140314 2009-09-30 19:51:41