Django管理员停止验证readonly内联

时间:2013-01-23 12:36:17

标签: django django-admin

我有一些表格经过了大量的验证。 为方便起见,我在相关表格中列出了其中的一些内容。 内联旨在是只读的,并且所有字段都标记为只读。 但是,当您保存内联页面时,它们仍在验证。 这会创建一些非常大的页面保存时间。什么是防止这种行为的安全方法?安全我的意思是,如果没有运行验证,它们不会被意外保存,这真的非常重要。

1 个答案:

答案 0 :(得分:1)

这是我到目前为止所做的,它有意义并且似乎有效:

class ReadOnlyInlineFormSet(BaseInlineFormSet):
    """ This inline can't save and subsequently doesn't need to validate """

    def save(self, commit=True):
        self.new_objects = []
        self.changed_objects = []
        self.deleted_objects = []
        return []

    def is_valid(self):
        return True

然后在每个内联中:

formset = ReadOnlyInlineFormSet