python - Django:以 10 为基数的 int() 的文字无效: 'csrfmiddlewaretoken'

标签 python django

当我尝试用数据保存表单时出现此错误。形式:

class EntityCreateForm(forms.ModelForm):

def __init__(self, chain, *args, **kwargs):
    super(EntityCreateForm, self).__init__(*args, **kwargs)
    self.fields['chain'] = forms.ModelChoiceField(queryset=Chain.objects.filter(pk__in = chain))

    class Meta:
        model = Entity
        fields = '__all__'

查看:

def entity_create(request):

    if request.method == 'POST':
        form = EntityCreateForm(request.POST)
        if form.is_valid():            
            form.save()
            return redirect(reverse('organisation:entity-list'))
    else:
        chain = request.session['chain']
        form = EntityCreateForm(chain)
    return render (request, 'organisation/entity_form.html', {'form':form})

这是怎么回事?

最佳答案

您已将意外参数添加到表单的 __init__ 函数中。如果您不以非标准方式使用此表单,则 Django 将使用 POST 数据填充此参数。要修复该错误,您必须覆盖用于包含额外数据的通用 View 的一部分,或者以其他方式传递它。

关于python - Django:以 10 为基数的 int() 的文字无效: 'csrfmiddlewaretoken',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54991746/

相关文章:

django - 从 Django 管理面板调用 Rest Api

python - Django Rest框架绑定(bind)参数时出错

python - iotop 脚本无法通过自定义脚本执行工作

Python:必须导入非内置异常才能捕获它们吗?

django - Azure web-app - Django 应用程序的多容器单元未成功启动

python - 如何使用 google-app-engine-django 验证包含 App Engine 上文件的 Django 表单?

python - 如何捕获flask_restful应用程序中引发的所有异常

python - 为什么 Python json 模块将字典键中的 float 表示为字符串?

Python,mysqldb错误1064

django - 项目布局和项目实用程序/库?