Не подставляются значения объекта модели из БД в форму на Django

При попытке выгрузить объект из БД по слагу и подставить его в форму для дальнейшего редактирования, я получаю исключение, что объекта нет, но при проверке через дебаг на pycharm, я вижу, что данные выгружаются и в форму почему-то не подставляются. Что именно я делаю, я передаю данные через ajax и в методе ловлю отправленные данные. Ситуация меняется если я меняю имя отправляемых данных, тогда данные подставляются в форму, но это не данные из БД, а входящие данные мной отправленные со страницы.

Первый пример отправки, где я получаю исключение:

function UpdateMessage(event) {
    ...........
        $.ajax({
            url: '/dialogs/' + data_chat_id + '/updateMessage/',
            type: 'POST',
            data: {
                slug_message: slug,
                message_input: editInput.value
            },
            success: function () {
                .......
            }
        });
    }
}

Если я поменяю "message_input" на "message", то данные "message" подставляются в форму, хотя я хочу подставить объект из БД, выгружая его по слагу:

function UpdateMessage(event) {
    ...........
        $.ajax({
            url: '/dialogs/' + data_chat_id + '/updateMessage/',
            type: 'POST',
            data: {
                slug_message: slug,
                message: editInput.value
            },
            success: function () {
                .......
            }
        });
    }
}

Метод обработки полученных данных:

class ObjectUpdateMessageMixin:
    model = None
    modelForm = None

    def post(self, request, chat_id):
        if request.is_ajax():
            message = request.POST.get('message_input')
            slug = request.POST.get('slug_message')
            obj = self.model.objects.get(slug_message__iexact=slug)
            form = self.modelForm(request.POST, instance=obj)
            if form.is_valid():
                form.save()
                return HttpResponse()

Скрин с PyCharm, с проверкой на то, что приходит: введите сюда описание изображения

Объект с переменной "obj" выгружается верно, но в "input value" формы он не подставляется, основной вопрос почему? Но если я передам данные с именем "message", то они сразу подставляются в значение "value" и "obj" вообще не котируется. Мне это все нужно для того, что бы проверять сообщения на редактирование.

форма модели сообщения:

class MessageForm(forms.ModelForm):

    class Meta:
        model = Message
        fields = ['message']
        labels = {
            'message': ''
        }
        widgets = {
            'message': forms.TextInput()
        }

Может это быть связано с тем, что в форме атрибут "name" имеет значение "message" и подстановка идет основываясь на этом атрибуте? И почему игнорируется "instance=obj", ведь я явно указываю, что надо подставлять или я не прав?


Ответы (0 шт):