اذهب إلى المحتوى

السؤال

نشر

لدي نموذج Model يحتوي على عدد من الحقول بالشكل التالي:

Class MyModel(models.Model):
    f1 = models.CharField(max_length=199)
    f2 = models.CharField(max_length=199)
    f3 = models.CharField(max_length=199)
    
    # ...

الآن أقوم بعمل نسخة instance من هذا النموذج Model وأريد أن أعدل على قيمة أكثر من حقل دفعة واحدة، مع العلم أن لدي قاموس dictionary يحتوي على اسم كل حقل والقيمة الجديدة الخاصة بهذا الحقل:

values = {
  "f1": "new value for f1",
  "f2": "new value for f2",
  "f3": "new value for f3"
}

هل توجد طريقة لتحديث قيمة أكثر من حقل من خلال إستخدام القاموس السابق في جانغو Djangoِ؟

Recommended Posts

  • 1
نشر (معدل)

إذا كنت تريد عمل تحديث على instance من هذا النموذج MyModel وتعديل اكثر من حقل دفعة واحدة ولديك قاموس بأسماء كل حقل والقيمة التي تريد تعديلها عليك استخدام دالة update لأنها تقبل قاموس يجب ان يكون بنفس الحقول للكائن او الObject المُراد التعديل عليه ولكن يجب ان تكون تعلم ما هو المعرف او pk الخاص  بالكائن للتحديث عليه حسناً الأمر في جانغو Django سيكون كالتالي :

MyModel.objects.filter(pk=pk).update(**values) # القاموس التي تحتوي البيانات المراد تعديلها values

 

تم التعديل في بواسطة Haroun Taha

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...