Jafar Ali نشر 11 مارس 2021 أرسل تقرير نشر 11 مارس 2021 في اطار Django لدي نموذجان واحد للمدرسين والثاني هو للفصول و احتاج عمل علاقة متعدد الى متعدد بين نموذجان حيث ان المدرس يمكن ان يدرس في أكثر من فصل ، كيف يمكنني فعل ذلك و هل يمكن التحكم في جدول علاقه متعدد الى متعدد ؟ النماذج : class Teacher(models.Model): name = models.CharField(max_length=50) salary = models.CharField(max_length=50) class Class(models.Model): name = models.CharField(max_length=50) capacity = models.CharField(max_length=20) 1 اقتباس
0 عزام عبد الحافظ نشر 11 مارس 2021 أرسل تقرير نشر 11 مارس 2021 في Django يمكنك بكل سهولة عمل علاقة متعدد الى متعدد باستخدام الحقل ManyToManyField ، هذا الحقل من Django يمكنك من إنشاء العلاقة بين نموذج المدرسين و الفصول لديك . تجتاج تعريف النموذج الذي تود عمل العلاقة معه داخل الحقل ManyToManyField. مثلًا لديك يمكنك فعل : class Teacher(models.Model): name = models.CharField(max_length=50) salary = models.CharField(max_length=50) class Class(models.Model): name = models.CharField(max_length=50) capacity = models.CharField(max_length=20) teachers = models.ManyToManyField(Teacher) #تعريف علاقة متعدد الى متعدد بهذه الطريقة Django سيقوم تلقائيا بانشاء جدول يقوم بربط بين نموذج المدرس و الفصل. ولكن اذا كنت تريد تحكم اكبر و إنشاء نموذج اخر بنفسك يكون هو حلقة الربط يمكنك ذلك بهذا المثال: class Teacher(models.Model): name = models.CharField(max_length=50) salary = models.CharField(max_length=50) class Class(models.Model): name = models.CharField(max_length=50) capacity = models.CharField(max_length=20) teachers = models.ManyToManyField(Teacher, through='TeacherClasses') class TeacherClasses(models.Model): teacher = models.ForeignKey(Teacher) class = models.ForeignKey(Class) في المثال الذي في الاعلى نحن قومنا بإنشاء نموذج TeacherClasses و هو الذي يمثل العلاقة متعدد الى متعدد ، يقوم بتوصيل بين النموذجين Teacher و Class عبر حقل ForeignKey : class TeacherClasses(models.Model): teacher = models.ForeignKey(Teacher) class = models.ForeignKey(Class) ولاستخدام هذا النموذج الخاص بنا في الربط نقوم في نموذج Class باعطاء حقل ManyToManyField المعامل through الذي يخبره ان يستخدم نموذج TeacherClasses في علاقة متعدد الى متعدد . 1 اقتباس
السؤال
Jafar Ali
في اطار Django لدي نموذجان واحد للمدرسين والثاني هو للفصول و احتاج عمل علاقة متعدد الى متعدد بين نموذجان حيث ان المدرس يمكن ان يدرس في أكثر من فصل ،
كيف يمكنني فعل ذلك و هل يمكن التحكم في جدول علاقه متعدد الى متعدد ؟
النماذج :
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.