Django 创建一个使用小部件只读的表单字段 [英] Django creating a form field that's read only using widgets

查看:33
本文介绍了Django 创建一个使用小部件只读的表单字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的表单域如下所示:

class FooForm(ModelForm):
    somefield = models.CharField(
        widget=forms.TextInput(attrs={'readonly':'readonly'})
    )

    class Meta:
        model = Foo

上面的代码出现如下错误:init()得到了一个意外的关键字参数'widget'

Geting an error like the following with the code above: init() got an unexpected keyword argument 'widget'

我认为这是对表单小部件的合法使用?

I thought this is a legitimate use of a form widget?

推荐答案

您应该使用表单字段而不是模型字段:

You should use a form field and not a model field:

somefield = models.CharField(
    widget=forms.TextInput(attrs={'readonly': 'readonly'})
)

替换为

somefield = forms.CharField(
    widget=forms.TextInput(attrs={'readonly': 'readonly'})
)

应该修复它.

这篇关于Django 创建一个使用小部件只读的表单字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆