forms.py 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. from django import forms
  2. from django.forms import ModelForm, CharField, SlugField
  3. from django.core.validators import validate_unicode_slug
  4. from .models import Network, Host
  5. class NetworkForm(ModelForm):
  6. class Meta:
  7. model=Network
  8. #fields = ['name', 'slug', 'nickname', 'password', 'username', 'home_channel', 'command_character', 'help_character']
  9. fields='__all__'
  10. #exclude = ['slug'] #Does not need "fields = '__all__'".
  11. labels={
  12. 'name': '<i class="sitemap icon"></i>Name',
  13. 'slug': '<i class="linkify icon"></i>Slug',
  14. 'nickname': '<i class="id badge icon"></i>Nickname',
  15. 'username': '<i class="id card icon"></i>Username',
  16. 'password': '<i class="privacy icon"></i>Password',
  17. 'home_channel': '<i class="hashtag icon"></i>Home channel',
  18. 'command_character': '<i class="terminal icon"></i>Command character',
  19. 'help_character': '<i class="help icon"></i>Help character',
  20. }
  21. widgets={
  22. 'name': forms.TextInput(attrs={'autocomplete': 'on'}),
  23. 'nickname': forms.TextInput(attrs={'autocomplete': 'on'}),
  24. 'username': forms.TextInput(attrs={'autocomplete': 'on'}),
  25. }
  26. class HostForm(ModelForm):
  27. class Meta:
  28. model=Host
  29. exclude=['network']
  30. labels={
  31. 'address': '<i class="server icon"></i>Address',
  32. 'port': '<i class="dungeon icon"></i>Port',
  33. 'ssl': '<i class="lock icon"></i>Use SSL',
  34. }
  35. widgets={
  36. 'address': forms.TextInput(attrs={'autocomplete': 'on'}),
  37. }