Как использовать свойство HTML заполнителя формы в стандартном представлении? - PullRequest
0 голосов
/ 08 сентября 2018

Я новичок в Django и использую пакет аутентификации пользователя Django (django.contrib.auth) для входа в систему, сброса пароля и т. Д.

Теперь, когда все работает нормально, в форме входа в систему я бы хотел использовать свойство html-placeholder. Как я могу использовать / заполнить это? Я нашел некоторые ответы (например, этот ), но я не понимаю, где разместить этот код, как расширить представление / форму или даже модель (например, добавление новых полей), поскольку это доставляется с помощью стандартная упаковка

Прямо сейчас я добавил следующее: forms.py из форм импорта Django из 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 или где-либо еще для выполнения кода.

Ответы [ 2 ]

0 голосов
/ 10 сентября 2018

Я полагаю, добавив виджеты в init форм, когда вы создаете экземпляр формы в своем шаблоне, заполнитель должен выглядеть так, как задумано. Вы просто пытались отобразить свою форму, такую ​​как {{form}} в шаблоне, и посмотреть, отрисовывает ли она ее? Я не думаю, что bootstrap4 необходим, но это отличный инструмент.

0 голосов
/ 10 сентября 2018

Я нашел следующее решение:

  • Установил bootstrap4
  • , используя следующий тег в моем html:

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

...