validation.py 文件源码

python
阅读 26 收藏 0 点赞 0 评论 0

项目:tissuelab 作者: VirtualPlants 项目源码 文件源码
def validate_list_editable(self, cls, model):
        """
        Validate that list_editable is a sequence of editable fields from
        list_display without first element.
        """
        if hasattr(cls, 'list_editable') and cls.list_editable:
            check_isseq(cls, 'list_editable', cls.list_editable)
            for idx, field_name in enumerate(cls.list_editable):
                try:
                    field = model._meta.get_field_by_name(field_name)[0]
                except models.FieldDoesNotExist:
                    raise ImproperlyConfigured("'%s.list_editable[%d]' refers to a "
                        "field, '%s', not defined on %s.%s."
                        % (cls.__name__, idx, field_name, model._meta.app_label, model.__name__))
                if field_name not in cls.list_display:
                    raise ImproperlyConfigured("'%s.list_editable[%d]' refers to "
                        "'%s' which is not defined in 'list_display'."
                        % (cls.__name__, idx, field_name))
                if field_name in cls.list_display_links:
                    raise ImproperlyConfigured("'%s' cannot be in both '%s.list_editable'"
                        " and '%s.list_display_links'"
                        % (field_name, cls.__name__, cls.__name__))
                if not cls.list_display_links and cls.list_display[0] in cls.list_editable:
                    raise ImproperlyConfigured("'%s.list_editable[%d]' refers to"
                        " the first field in list_display, '%s', which can't be"
                        " used unless list_display_links is set."
                        % (cls.__name__, idx, cls.list_display[0]))
                if not field.editable:
                    raise ImproperlyConfigured("'%s.list_editable[%d]' refers to a "
                        "field, '%s', which isn't editable through the admin."
                        % (cls.__name__, idx, field_name))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号