Django: Профиль поставщика не обнаружен, несмотря на то, что создан

Я работаю над проектом Django, в котором каждый пользователь может иметь связанный с ним профиль продавца. Я создал профиль продавца для пользователя, но когда я пытаюсь получить доступ к магазину продавца, он всегда выдает страницу no_vendor.html, указывая, что профиль продавца не существует.

Функция просмотра:

Вот функция представления, в которой я пытаюсь получить профиль продавца:

@login_required
def vendor_shop(request):
    try:
        vendor = Vendor.objects.get(user=request.user)
    except Vendor.DoesNotExist:
        # Handle the case where the vendor does not exist
        return render(request, 'vendorpannel/no_vendor.html')  # Redirect to a page or show a message

    all_products = Product.objects.filter(vendor=vendor)
    all_categories = Category.objects.all()

    context = {
        "all_products": all_products,
        "all_categories": all_categories,
    }
    return render(request, 'vendorpannel/shop.html', context)

Модели:

Вот соответствующие модели:

У меня есть отдельное приложение, в котором реализована модель VendorProfile:

class VendorProfile(models.Model):
    user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, related_name='vendor_profile')
    company_name = models.CharField(max_length=255)
    contact_number = models.CharField(max_length=15)
    address = models.TextField()
    city = models.CharField(max_length=100)
    state = models.CharField(max_length=100)
    zip_code = models.CharField(max_length=10)
    country = models.CharField(max_length=100)
    website = models.URLField(blank=True, null=True)
    profile_image = models.ImageField(upload_to='vendor_profiles/', blank=True, null=True)
    bio = models.TextField(blank=True, null=True)

    def __str__(self):
        return self.company_name

Вопросы:

1.Каковы возможные причины того, что объект VendorProfile не обнаруживается в функции представления, несмотря на его наличие в базе данных? 2.Есть ли какие-либо дополнительные шаги, которые я должен предпринять для отладки или устранения этой проблемы?

Спасибо за помощь!

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