Поле 'id' ожидало число, но получило '8c744bf0-1f7e-4ed9-a2b5-9a8155adb4b5'

У меня небольшая проблема с моим "id". Я не знаю, как сделать, чтобы получить правильный id.Я пытался сделать это многими способами, но все еще не имею идеи.

МОДЕЛИ

ПРОСМОТРОВ

def ProjektView(request, pk ):
profil = Profil.objects.get(user=request.user)
projekt = profil.projekt_set.all()
srodek = Srodek.objects.filter(id=pk)

if request.method == "POST":
    form = OptionsForm(request.POST or None, request.FILES or None)
    if form.is_valid():
        form.save()


template_name = 'viewProjekt.html'
context = {
    'projekt':projekt,
    'srodek':srodek,


}
return render(request, template_name, context)

Если я попробую srodek = Srodek.objects.all() это работает, но не работает нормально, потому что каждый проект имеет один и тот же Srodek Демонстрационная фотография

Вам нужно изменить имя переменной id, id - это встроенная функция в python, которая возвращает идентификатор объекта. Я думаю, что это причина вашей ошибки.

Ваша вторая ошибка заключается в том, что он ожидает шестнадцатеричную строку, а вы не предоставляете ее в правильном формате. Вам нужно преобразовать строку, полученную от from, в шестнадцатеричный формат.

Я исправил это "srodek = Srodek.objects.filter(projekt_id=pk)", но у меня возникла следующая проблема... Когда я использую опцию update, я получаю следующую ошибку "[''"3" не является действительным UUID.'']"

Здесь полная ошибка

Здесь полная ошибка

Я не думаю, что проблема в uuid.uuid4. Я пробовал uuid.uuid4().hex. Если я использую uuid.uuid4, то все в порядке. http://127.0.0.1:8000/projekty/view_projekt/bd7ce422-1951-4225-8099-37e15e9ac2cf/. Это работает правильно, но когда я пытаюсь обновить, у меня возникает проблема с uuid

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