【问题标题】:How can I get password text box for django?如何获取 django 的密码文本框?
【发布时间】:2012-02-07 01:09:52
【问题描述】:
class Users(models.Model):
    username = models.CharField(max_length=255)
    password = models.CharField(max_length=300)
    password_token = models.CharField(max_length=300, default='0')

密码文本输入字段是常规文本输入字段。这不是密码字段。

如何在 django 中获取密码字段?

我尝试了password = models.CharField(max_length=300, widget=forms.PasswordInput ),但出错了。

【问题讨论】:

标签: python django forms input passwords


【解决方案1】:

如果您的应用中有 forms.py,一种方法是在您的 Meta 类中指定小部件,例如

from django.forms import ModelForm, PasswordInput
class UserForm(ModelForm):

    class Meta:
        model = Users

        widgets = {
            'password' : PasswordInput(),
        }

【讨论】:

  • class Users(models.Model): password = models.CharField(max_length=300) 中还有其他方法可以做同样的事情吗?
【解决方案2】:

小部件是在表单中分配的,而不是在模型上。

有关表单文档,请参阅文档:https://docs.djangoproject.com/en/dev/ref/forms/widgets/

【讨论】:

    【解决方案3】:

    您可以使用这种方法。在您的应用中创建一个名为 forms.py 的文件。

    例如:

    from django import forms
    from models import Users
    
    class UsersForm(forms.ModelForm):
        password = forms.CharField(widget=forms.PasswordInput)
    
        class Meta:
            model = Users
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-23
      • 1970-01-01
      • 2017-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-09
      相关资源
      最近更新 更多