Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有初始数据的Django禁用字段引发验证错误_Django_Django 1.11 - Fatal编程技术网

带有初始数据的Django禁用字段引发验证错误

带有初始数据的Django禁用字段引发验证错误,django,django-1.11,Django,Django 1.11,我的表单中有一个字段,它提供了一个初始数据,如果用户是staff,它将被禁用(管理员可以从列表中选择)。对于代码行如下的员工,我已禁用此字段 self.fields[''].disabled = True 在升级到django 1.11.7之后,它开始引发验证错误。我试着用 self.fields[''].widget.attrs['readonly']=True Css变成只读,但我仍然可以进行更改 这是一个1.11.7错误,还是在对禁用功能的工作方式进行更改时发生了什么。我在文档中找不到任

我的表单中有一个字段,它提供了一个初始数据,如果用户是staff,它将被禁用(管理员可以从列表中选择)。对于代码行如下的员工,我已禁用此字段

self.fields[''].disabled = True
在升级到django 1.11.7之后,它开始引发验证错误。我试着用

self.fields[''].widget.attrs['readonly']=True

Css变成只读,但我仍然可以进行更改


这是一个1.11.7错误,还是在对禁用功能的工作方式进行更改时发生了什么。我在文档中找不到任何新内容

这不是最好的解决方法,但我设法让它工作起来。在模型字段上,我将其设置为blank=True,这样就不会使用disabled=True对我进行空字段验证,然后在save方法中,我再次指定了我需要的值。

要禁用它的字段,是文本输入/选择吗?.1)字段是choicefield。2) 这个解决方案实际上不起作用,因为我需要在创建模型时将其设置为只读。我尝试用禁用的字段进行更新,它工作正常。当我试图创建一个带有disabled字段的新模型时,这会给我带来错误。该字段为必填字段。忘了加上那个。它的设计使得管理员在创建模型时,不能将模型留空。Staff user具有给定的初始数据,并且该字段为只读。