0
#models.py
#
class Students(models.Model):
StudentID = models.IntegerField(primary_key=True)
FIO = models.CharField(max_length=50)
StudGroup = models.CharField(max_length=10)
NYear = models.IntegerField()
class Phone(models.Model):
Code = models.AutoField(primary_key=True)
StudentID = models.ForeignKey(Students)
Phone = models.BigIntegerField()
#views.py
#
def show_all(reqest):
all_students = Students.objects.all()
return render_to_response('demosite/index.html',
{'All_students': all_students})
此代碼運行正常。現在Django的模擬SQL「INNER DJOIN」
我看來返回這個請求:
SELECT * FROM Students
但變量all_students應該從2個表包含數據。
我如何獲得的Django運行這個請求:
SELECT Students.FIO, Phone.Phone FROM Students INNER DJOIN Phone ON Students.StudentID = Phone.StudentID
當您使用SQL中的Django ORM停止思考。在您的情況下,您可以通過ForeignKey的反向關係訪問學生的電話記錄。默認名稱應該是'phone_set'。 –