Как сделать подобную форму?

Для создания подобной формы в Django, вам необходимо выполнить несколько шагов.

1. Создайте модель, которая будет представлять данные формы. Создайте новый файл models.py в вашем Django приложении и определите модель с необходимыми полями. Например:

from django.db import models

class ContactForm(models.Model):
    name = models.CharField(max_length=100)
    email = models.EmailField()
    message = models.TextField()
    # добавьте другие поля, если необходимо

2. Создайте форму на основе модели. Создайте новый файл forms.py в вашем Django приложении и определите форму для модели. Например:

from django import forms
from .models import ContactForm

class ContactFormModelForm(forms.ModelForm):
    class Meta:
        model = ContactForm
        fields = ('name', 'email', 'message')
        # добавьте другие поля, если необходимо

3. Создайте представление, которое будет отображать форму. В вашем представлении, вы можете использовать ContactFormModelForm и предоставить его как контекст шаблону. Например:

from django.shortcuts import render
from .forms import ContactFormModelForm

def contact_view(request):
    form = ContactFormModelForm(request.POST or None)
    if form.is_valid():
        form.save()
        form = ContactFormModelForm()  # очистка формы после успешного сохранения
    context = {'form': form}
    return render(request, 'contact.html', context)

4. Создайте шаблон для визуализации формы. Создайте файл contact.html в папке templates вашего Django приложения. Например:

<form method="post" action="">
    {% csrf_token %}
    {{ form.as_p }}
    <button type="submit">Отправить</button>
</form>

В этом шаблоне мы использовали form.as_p, чтобы отобразить все поля формы в видеотдельных параграфов. Вы можете использовать другие методы, такие как form.as_table или form.as_ul, в зависимости от предпочтений стилизации.

5. Настройте URL маршрутизацию. В файле urls.py вашего Django приложения добавьте путь к представлению, которое будет обрабатывать форму. Например:

from django.urls import path
from .views import contact_view

app_name = 'your_app_name'
urlpatterns = [
    path('contact/', contact_view, name='contact'),
    # добавьте другие пути, если необходимо
]

Теперь у вас должна быть полностью функционирующая форма контактов в вашем Django приложении. Пользователи смогут вводить данные и отправлять их на сервер. Вы можете дополнить базовую реализацию этой формы добавлением валидации, обработку успешной отправки и другие дополнительные функции, в зависимости от ваших потребностей.