Join trong Django

Với trường hợp của bạn đâu cần join 2 bảng làm gì, hãy viết đơn giản truy vấn để maintain dễ hơn sau này:

cat = Category.objects.get(id=1)

country = Country.object.get(id=2)

bn = BrandName.objecs.filter(category_id=cat, country_id=country).first()
x = bn.country_id. country_name
y = bn.category_id.category_name

Trường hợp filter tắt dùng JOIN nó sẽ như vầy:

print(BrandName.objects.filter(category_id__country_name='Vietnam').only('brand_name').query)

Các truy vấn phức tạp với Django thì xem thêm và thực hành ở đây nhé: https://docs.djangoproject.com/en/3.1/topics/db/queries/

Truy vấn raw SQL cũng không phải lựa chọn tồi nếu bạn nắm rõ điều mình muốn làm: https://docs.djangoproject.com/en/3.1/topics/db/sql/

Chúc thành công!