Django-禁用下拉菜单的表单选择字段验证

时间:2018-12-18 20:33:45

标签: django python-3.x

如何禁用下拉列表的表单字段验证?在.js文件中,我使用Ajax从数据库返回json数据并将其填充到下拉列表中。当我尝试保存表单时,它给了我这个验证错误。

enter image description here

在forms.py中:

class CreateAForm(forms.ModelForm):        
    DUMMY_LIST =[]
    ptvb_dept= forms.ChoiceField(choices= DUMMY_LIST)

在views.py中:

@login_required
def json_ptvb_dept(request):
    sql = """ select category as dept from tablename order by 1;"""
    df = pd.read_sql(sql, teradata_con()) 
    df_dept = df[['dept']].drop_duplicates()  
    dic = {'dept':[]}
    for index, row in df_dept.iterrows():        
        dic['dept'].append(row['dept'])  
    return HttpResponse(json.dumps(dic)) 

1 个答案:

答案 0 :(得分:1)

关于“表单域”有两种概念:实际上是form fields(实现所有验证和ORM转换的人)和widgets(如何在前端呈现它们)。

已经与它的默认窗口小部件关联的每个标准表单字段,但是您可以指定它:

ptvb_dept = forms.TextField(widget=widgets.Select)