如何在标准视图中使用html表单'placeholder'属性?

问题描述 投票:0回答:2

我是Django的新手,我正在使用Django的用户身份验证包(django.contrib.auth)进行用户登录,密码重置等。

现在,虽然一切正常,但在登录表单上,我想使用html-placeholder属性。我该如何使用/填充?我确实找到了一些答案(例如this one),但我不明白放置此代码的位置,如何扩展视图/表单甚至模型(例如添加新字段),因为这是通过标准包提供的。

现在,我添加了以下内容:来自django导入表单的forms.py来自django.contrib.auth.forms import AuthenticationForm

class LoginForm(forms.Form):
  username = forms.CharField(label='username')
  password = forms.CharField(label='password')

  def __init__(self, *args, **kwargs):
      super(LoginForm, self).__init__(*args, **kwargs)
      self.fields['username'].widget.attrs['placeholder'] = 'Username'
      self.fields['password '].widget.attrs['placeholder'] = 'Password'

我不确定我需要在urls.py或models.py或其他任何地方执行代码。

python django placeholder
2个回答
0
投票

我找到了以下解决方案:

  • 安装bootstrap4
  • 在我的html中使用以下标记:

{%bootstrap_field form.password field_class =“field”placeholder =“Password”show_label = False%}


0
投票

我相信通过将窗口小部件添加到您的窗体init,当您在模板中实例化窗体时,占位符应该像预期的那样显示。您是否只是尝试在模板中呈现您的表单,例如{{form}},看看它是否呈现了它?我不认为bootstrap4是必要的,但它是一个很棒的工具。

© www.soinside.com 2019 - 2024. All rights reserved.