Не удается получить значения из базы данных django

У меня есть таблица, из которой я пытаюсь получить значения. Она имеет два внешних ключа и все. Я использую get_or_create для таблицы и создаю объект. Я проверяю в панели администратора, что объект существует. Затем я пытаюсь извлечь его, но не получаю значений, хотя вижу их в панели администратора.

Вот таблица:

class req(models.Model):
    to = models.ForeignKey(User,on_delete=models.CASCADE)
    from = models.ForeignKey(User, on_delete=models.CASCADE)

    def __str__(self):
        return "request sent"

В приведенном ниже куске кода то, что я извлекаю, я пытаюсь отобразить так, как оно есть в теге p, а также я пытался сделать req.to и req.from.first_name, но тщетно, я не увидел никаких значений.

def get(self, request):
        u = get_user(request)
        try:
            my_requests = req.objects.get(from=u)
        except req.DoesNotExist:
            fr = None
        if fr == None:
            return redirect(reverse('dogpark:index'))
        if my_requests != False:
            context_dict['req'] = my_requests
        return render(request, 'myapp/req.html', context=context_dict)
    

Может ли кто-нибудь увидеть проблему, которую не вижу я, и прокомментировать ее?

В вашем коде есть несколько проблем. вот обновленная версия, которая решает вашу проблему :-

def get(self, request):
    req_obj, created = req.objects.get_or_create(from=request.user)
    if created:
        context_dict['req'] = my_requests
        return render(request, 'myapp/req.html', context=context_dict)
    return redirect(reverse('dogpark:index'))
Вернуться на верх