Данные не обновляются при выполнении операций CRUD в магазинах

В настоящее время я пишу CRUD-операцию покупки, где Категории и SUB категории связаны через foreignkey и я использую сериализаторы.

Я написал функцию update для редактирования данных, однако, данные не обновляются, несмотря на написание функции update

ниже приведена функция редактирования и вставки подкатегорий

def edit_sub_categories(request,id):
    if request.method == 'GET':
        editsubcategories = SUBCategories.objects.filter(id=id).first()
        s= SUBCategoriesSerializer(editsubcategories)
        category_dict = Categories.objects.filter(isactive=True)
        category = CategoriesSerializer(category_dict, many=True)
        hm = {"SUBCategories":s.data,"context": category.data}
        # print(category.data)
        return render(request,'polls/edit_sub_categories.html',hm)
    else:
        editsubcategories = {}
        d = SUBCategories.objects.filter(id=id).first()
        if d:
            editsubcategories['sub_categories_name']=request.POST.get('sub_categories_name')
            editsubcategories['sub_categories_description']=request.POST.get('sub_categories_description')
            # print(editsubcategories)
            form = SUBCategoriesSerializer(d,data=editsubcategories)
            if form.is_valid():
                form.save()
                # print("hkjk",form.data)
                print('form error',form.errors)
                messages.success(request,'Record Updated Successfully...!:)')
                return redirect('sub_categories:show_sub_categories')
            else:
                return redirect("sub_categories:show_sub_categories")

def insert_sub_categories(request):
    if request.method == "POST":
        form = SUBCategoriesSerializer(data=request.POST)
        if form.is_valid():
            form.save()
            messages.success(request, "Record Updated Successfully...!:)")
            return redirect("sub_categories:show_sub_categories")
    category_dict = Categories.objects.filter(isactive=True)
    category = CategoriesSerializer(category_dict, many=True)
    hm = {"context": category.data}
    return render(request, "polls/insert_sub_categories.html", hm)


    

html код страницы редактирования

<form method="POST" >
            {% csrf_token %}
            <table> <!--content-table-->
                <thead>
                    <tr>
                        <td>Sub Categories ID</td>
                        <td><input type="text" name="id" value="{{SUBCategories.id}}" readonly></td>
                    </tr>
                    <tr>
                        <td>Categories Name</td>
                        <td>
                            <!-- <input type="text" name="category_name" value="{{SUBCategories.category_name}}"> -->
                            <select name="category_name" id="">
                                {% for c in context %}
                                    <option value="{{c.id}}">{{c.category_name}}</option>
                                {%  endfor  %}
                            </select>
                        </td>
                    </tr>
                    <tr>
                        <td>Sub Categories Name</td>
                        <td><input type="text" name="sub_categories_name" value="{{SUBCategories.sub_categories_name}}"></td>
                    </tr>
                    <tr>
                        <td>Sub Categories Description</td>
                        <td><input type="text" name="sub_categories_description" value="{{SUBCategories.sub_categories_description}}"></td>
                    </tr>
                    
                    
                    <tr>
                        <td>
                            <!-- <input type="submit" value="update record"> -->
                            <a href="{% url 'sub_categories:show_sub_categories' %}">
                                <button type="submit" class="btn btn-success" value="update record">
                                    <i class="fa-solid fa-database"> Update Value</i>
                                </button>
                            </a>
                        </td>
                        <td>
                            {% if messages %}
                            {% for mess in messages %}
                            <b style="color:green;"> {{mess}} </b>
                            {% endfor %}
                            {% endif %}
                        </td>
                    </tr>
                </thead>
            </table>
            <button class="btn btn-success"><a href="{% url 'sub_categories:show_sub_categories' %}" style="color:red;">Home Page</a></button>

        </form>

где я ошибаюсь в коде?

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