我有以下简化设置:
我想要的是仅在内联模型上执行“保存”操作。我认为所有领域都是只读它应该工作正常。有人能给我一个干净的暗示吗?
class Legacy(models.Model):
legacyData = models.TextField()
def clean(self):
raise ValidationError("%s model is readonly." % self._meta.verbose_name.capitalize())
class Comment(models.Model):
legacy = models.OneToOneField(Legacy)
comment = models.TextField()
class LegacyAdmin(admin.ModelAdmin):
def __init__(self, *args, **kwargs):
self.readonly_fields = self.fields
super(LegacyAdmin, self).__init__(*args, **kwargs)
model = Legacy
inlines = (CommentInline, )
非常感谢你的时间! :)
答案 0 :(得分:1)
您可以覆盖旧版本的save()并使用http://docs.djangoproject.com/en/dev/ref/contrib/messages/告诉您的用户未发生的事情,而不是在clean()中引发异常。