Хрустящая форма - это не рендеринг

Попытка рендеринга формы, но она рендерится без хрустящих тегов.

Я сделал

  • установил django-crispy-forms (используя pip)
  • добавил 'CRISPY_TEMPLATE_PACK' в мои настройки
  • добавьте 'crispy_forms' в мои приложения
  • загрузите тег crispy в register.html (используя {% load crispy_forms_tags %})

Как он оказывает

forms.py
---------
      from django import forms
        class helomodel(forms.Form):
            name = forms.CharField()
            email = forms.EmailField()
            content = forms.CharField()

    views.py 
    ---------
    from django.shortcuts import render
    from . forms import helomodel
    
    def register(response):
        form = helomodel()
        return render(response,'main/register.html',{'form':form})

    settings.py 
    -----------
    INSTALLED_APPS = [
        'main.apps.MainConfig',
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'crispy_forms',
    ]
    
    
    CRISPY_TEMPLATE_PACK = 'bootstrap4'

 

    Register.html 
    --------------
    {% extends 'main/base.html' %}
    {% load crispy_forms_tags %}
    
    {% block content %}
      <form method="post">
        {% csrf_token %}
        {{ form|crispy }}
    
        <button type="submit" class="btn btn-success">Register</button>
      </form>
    {% endblock %}



  • u r missing form.as_p() || form.as_table() || form.as_ul() after {{ form|crispy }}, которые будут выводить поля формы в <p>, <table> or <ul> соответственно

  • u также отсутствуют или находятся в форме вот пример того, как вы можете сделать это

<button type="submit" class="btn btn-success">Register</button>
Вернуться на верх