Как ввести массив в django html

Я новичок в django. Хочу сделать сайт для изменения таблиц в базе данных. Должно быть реализовано изменение, удаление, добавление записи. Проблема в том, что один из параметров таблицы Array и я не знаю как сделать его ввод. Я пытался сделать это через ввод текста, но у меня ничего не получилось

Вот мой код

forms.py

from .models import dj_ksg_p
from django.forms import ModelForm, TextInput

class KSGForms(ModelForm):
    class Meta:
        model=dj_ksg_p
        fields=['id','name','c_prof','smj_prof','KSG']
        widgets={
            "id": TextInput(attrs={
                'class':'from-control',
                'placeholder':'Id'
            }),
            "name": TextInput(attrs={
                'class': 'from-control',
                'placeholder': 'Название МО'
            }),
            "c_prof": TextInput(attrs={
                'class': 'from-control',
                'placeholder': 'Профиль'
            }),
            "smj_prof": TextInput(attrs={
                'class': 'from-control',
                'placeholder': 'Смежный профиль'
            }),
            "KSG": TextInput(attrs={
                'class': 'from-control',
                'placeholder': 'КСГ'
            })
        }

views.py

from django.shortcuts import render,redirect
from django.views.generic.list import ListView
from django.views.generic import DetailView, UpdateView,DeleteView
from django.http import HttpResponse
from .models import dj_ksg_p
from rest_framework import viewsets
from .forms import KSGForms
\#from .serializers import HeroSerializer

class KSGView(ListView):
model = dj_ksg_p
template_name = 'ksg/kss.html'
queryset = dj_ksg_p.objects.all()

class NewDataView(DetailView):
model = dj_ksg_p
template_name = 'ksg/create.html'
context_object_name = 'dj_ksg_p'

class DeleteKSG(DeleteView):
model = dj_ksg_p
template_name = 'ksg/delete.html'
success_url = '/ksg/'

class NewUpdateView(UpdateView):
model=dj_ksg_p
template_name = 'ksg/detail_view.html'
fields = \['id','name','c_prof','smj_prof','KSG'\]
form_class=dj_ksg_p

def create(request):
error = ''
if request.method =='POST':
form= KSGForms(request.POST)
if form.is_valid():
form.save()
\#redirect()#Перенос
else:
error='Форма заполнения неверная'
form=KSGForms()
data={
'form':form,
'error':error
}
return render(request,'ksg/create.html',data)

models.py

from cleb import settings
import psycopg2
from psycopg2 import Error
from django.db import connection
from django.contrib.postgres.fields import ArrayField

class dj_ksg_p(models.Model):
    id=models.IntegerField(primary_key=True, serialize=True, unique=True)
    name=models.TextField()
    c_prof=models.IntegerField()
    smj_prof=ArrayField(
        models.IntegerField()
    )
    KSG=models.CharField(max_length=255)
    #def __str__(self):
        #return self.s
    def get_absolute_url(self):
        return f'ksg/{self.id}'
    class Meta:
        db_table='ksg_p'

kss.html

{% load static%}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css">
    <link rel="stylesheet" href="{% static 'ksg/css/ksg.css' %}">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.15.4/css/fontawesome.min.css">
</head>
<body>
<table>
     <colgroup>
         <col span="2" style="background:Khaki"><!-- С помощью этой конструкции задаем цвет фона для первых двух столбцов таблицы-->
         <col style="background-color:LightCyan"><!-- Задаем цвет фона для следующего (одного) столбца таблицы-->
         <col style="background-color:Khaki">
     </colgroup>
    <!--   <tbody>-->
 <caption>Профили</caption>
<tr>
    <th>ID</th>
    <th>Name</th>
    <th>C_PROF</th>
    <th>smj_prof</th>
    <th>KSG</th>
</tr>
{% for serv in object_list %}
    <tr>
        <td>{{ serv.id }}</td>
        <td>{{ serv.name }}</td>
        <td>{{ serv.c_prof }} </td>
        <td>{{ serv.smj_prof}}</td>
        <td>{{ serv.KSG }}</td>
        <td><a href="{% url 'create' %}"><button class="btn btn-info">Добавить запись</button></a></td>
        <td><a href="{% url 'ksg_detail' serv.id %}" class="btn btn-warning">Изменить</a></td>
        <td><a href="{% url 'ksg_delete' serv.id %}" class="btn btn-info">Удалить</a></td>
    </tr>
{% endfor %}
<!-- ><i class="fas fa-plus-circle"> </tbody>-->
</table>
</body>
</html>

create.html

{% load static%}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css">
    <link rel="stylesheet" href="{% static 'ksg/css/ksg.css' %}">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.15.4/css/fontawesome.min.css">
</head>
<body>
<div class="features">
    <h1>Форма добавления записи</h1>
    <form method="post">
        {% csrf_token %}<br>
        {{form.id}}<br>
        {{form.name}}<br>
        {{form.c_prof}}<br>
        {{form.smj_prof}<br>
        {{form.KSG}}<br>
        <span>{{error}}</span>
        <button class="btn btn-success" type="submit">Добавить статью</button>
    </form>
</div>
</body>
</html>

вот как выглядит мой сайт таблица с кнопками добавление/обновление колонки

Вы забыли упомянуть "action" в теге "form", который определяет представление, которое должно быть выполнено. Ниже приведен пример отправки формы в django с использованием представлений на основе функций, следуйте этому подходу, пожалуйста, не копируйте код. enter image description here

Вернуться на верх