2012-04-28 43 views
3

我在表单中有一个特定的字段,需要有一个自定义的属性,我们将其称为密码框。目前,我有:如何在Django字段中使用多个小部件?

login_password = forms.CharField(label=(u'password')) 

但我需要这两种:

widget=forms.TextInput(attrs={'placeholder': 'password'}) 
widget=forms.PasswordInput(render_value=False) 

我怎样才能使它等等领域使用这两个小部件?我已阅读关于MultiWidget,但我不确定这是我需要使用还是如何使用它。

回答

4

PasswordInput也接受attrs

login_password = forms.CharField(label=u'password', widget=forms.PasswordInput(render_value=False, attrs={'placeholder': 'password'})) 
+1

哦,甜蜜,没有意识到。但是,即使我确实需要多个小部件,我怎么能实现呢? – n0pe 2012-04-28 08:59:25

+0

@MaxMackie这是非常普遍的问题。它的答案和更一般的问题有相同的答案:“如果我有两门课,我怎么能让这门课结合这两门课?”。具体的答案来自具体的任务:有时你可以使用'MultiWidget',有时你从一个类继承,并从另一个类借用一些方法,有时(从未见过)从两个父母直接继承是可能的。而且在很多情况下,您只需要google并找到现有的解决方案。 :-) – DrTyrsa 2012-04-28 09:32:08