У меня есть стол для студентов и стол для университета.
Кажется, я не могу получить название университета на основании имени университета: студент имеет
База данных:
Студенты:
id, first_name, last_name, university_id
0, bob, jones, 12
1, Tim, Smith, 13
университет:
id, name
12 Harvard
13 Stanton
14 N/A
Models.py
from django.db import models
class University(models.Model):
name = models.CharField(max_length=50)
class Meta:
verbose_name = "University"
verbose_name_plural = "Universities"
#__unicode__
def __str__(self):
return self.name
class Student(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
university = models.ForeignKey(University, on_delete=models.DO_NOTHING)
class Meta:
verbose_name = "Student"
verbose_name_plural = "Students"
#__str__
def __str__(self):
return '%s %s' % (self.first_name, self.last_name)
views.py
class View_all_apiview(APIView):
def get(self, request, *args, **kwargs):
students_q = Student.objects.all().prefetch_related('university')
return JsonResponse(list(students_q.values()), safe=False)
Я пытался получить название университета с использованием student_q.name, но это выдает ошибку.