Amer Abdallah نشر 23 سبتمبر 2021 أرسل تقرير نشر 23 سبتمبر 2021 أريد إنشاء نموذج PostModel يحتوي على حقل من نوع ForeignKey يشير إلى المعرف الأساسي id لكائن آخر من نفس النموذج، أي شيء كالتالي على سبيل المثال: class PostModel(models.Model): parent = models.ForeignKey(PostModel) هل يمكن عمل ذلك في قواعد البيانات (أي أن يشير مفتاح أجنبي ForeignKey إلى كائن آخر من نفس النموذج (في نفس الجدول))؟ أم أن هناك طرق أخرى للوصول إلى نفس النتيجة؟ وكيف أقوم بهذا؟ 1 اقتباس
1 سامح أشرف نشر 23 سبتمبر 2021 أرسل تقرير نشر 23 سبتمبر 2021 يمكن القيام بهذا الأمر في جانغو Django بأكثر من طريقة: يمكنك تمرير اسم النموذج كنص إلى ForeignKey وسوف يعمل كل شيء على ما يرام. class PostModel(models.Model): parent = models.ForeignKey("PostModel") أو يمكنك استخدام طريقة أكثر ديناميكية من خلال تمرير النص "self" فقط، على النحو التالي: class PostModel(models.Model): parent = models.ForeignKey("self") وتسمى العلاقة في هذه الحالة recursive relationship. كما يمكنك تحديد ما الذي سيحدث عن حذف الكائن الأجنبي من خلال تحديد الخاصية on_delete كما في المثال التالي: class PostModel(models.Model): parent = models.ForeignKey("self"), on_delete=models.CASCADE) 1 اقتباس
السؤال
Amer Abdallah
أريد إنشاء نموذج PostModel يحتوي على حقل من نوع ForeignKey يشير إلى المعرف الأساسي id لكائن آخر من نفس النموذج، أي شيء كالتالي على سبيل المثال:
هل يمكن عمل ذلك في قواعد البيانات (أي أن يشير مفتاح أجنبي ForeignKey إلى كائن آخر من نفس النموذج (في نفس الجدول))؟ أم أن هناك طرق أخرى للوصول إلى نفس النتيجة؟ وكيف أقوم بهذا؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.