Skip to content

第十章 P232 在 adminforms.py 中对 __init__ 方法进行重写的相关问题 #59

@voldown

Description

@voldown

对于文章编辑表单提交后出现 TypeError: init() got multiple values for argument ‘instance' 的解决方法如下:

def __init__(self, *args, **kwargs):
        initial = kwargs.get('initial') or {}
        instance = kwargs.get('instance')
        if instance:
            if instance.is_md:
                initial['content_md'] = instance.content
            else:
                initial['content_ck'] = instance.content
        kwargs.update({'initial': initial, 'instance': instance})
        super().__init__(*args, **kwargs)

StackOverflow 上的相关参考

https://stackoverflow.com/questions/55338745/typeerror-init-got-multiple-values-for-argument-instance
https://stackoverflow.com/questions/19672035/django-multiple-values-for-keyword-argument-initial

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions