Вывод данных из бд postgresql на django

У меня есть данные в БД postgres, а мне надо вывести эти данные на страницу шаблона, но ничего не выводится.

settings.py:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'walkie_talkie',
        'USER': 'postgres',
        'PASSWORD': '1111',
        'HOST': '127.0.0.1',
        'PORT': '5432'
    }
}

models.py:

class State(models.Model):
    id = models.AutoField(primary_key=True)
    state_name = models.CharField('Название поста', max_length=380)

    def __str__(self):
        return self.id

    class Meta:
        verbose_name = 'Пост'
        verbose_name_plural = 'Посты'

forms.py:

class StateForm(ModelForm):
    class Meta:
        model = State
        fields = ['id', 'state_name']

        widgets = {
            "id": TextInput(attrs={
                'class': 'form-control',
                'placeholder': 'Порядковый номер'
            }),
            "state_name": TextInput(attrs={
                'class': 'form-control',
                'placeholder': 'Название поста'
            }),
        }

views.py:

def state_page(request):
    state = State.objects.all()
    return render(request, 'news/state.html', {'state': state})

def info_state(request):
    state_form = StateForm

    state_data = {
        'form': state_form
    }
    return render(request, 'news/state.html', state_data)

state.html:

{% extends 'main/base.html' %}

{% block title %}
State
{% endblock %}

{% block content %}
<div class="features">
    <h1>State</h1>
    {% if state %}
        {% for el in state %}
            <div class="alert alert-warning">
                <h3>{{ el.id }}</h3>
                <p>{{ el.state_name }}</p>

            </div>
        {% endfor %}
    {% else %}
        <p>Нет записей!</p>
    {% endif %}
</div>
{% endblock %}
Вернуться на верх