मैं Django bulk_create पर पढ़ रहा था और उसकी "खामियों" के कुछ:विदेशी कुंजी में Django bulk_create वस्तुओं का उपयोग करना?
"
This has a number of caveats though:
1. The model's save() method will not be called, and the pre_save and post_save signals will not be sent.
2. It does not work with child models in a multi-table inheritance scenario.
3. If the model's primary key is an AutoField it does not retrieve and set the primary key attribute, as save() does.
"
मैं पूरी तरह से यह समझ में नहीं आया।
objList = [a, b, c,] #none are saved
model.objects.bulk_create(objList)
मैं अभी भी विदेशी कुंजी में इन वस्तुओं ठीक इस्तेमाल कर सकता: तो अगर मैं वस्तुओं की एक सूची है, यह bulk_create में पारित?
for obj in objList:
o = otherModel(something='asdfasdf', fkey=obj)
o.save() # will this be fine given the caveats stated above?
तो क्या विदेशी संबंध संबंध ठीक रहेगा? इसके अलावा जब यह 2 कहता है। यह बहु-तालिका विरासत परिदृश्य में बाल मॉडल के साथ काम नहीं करता है, इसका मतलब है कि किसी अन्य मॉडल (सार या नहीं) से प्राप्त कोई भी मॉडल bulk_create का उपयोग नहीं कर सकता है?
तो मैं विदेशी कुंजी संबंधों को कैसे संभालेगा? क्या मुझे केवल उन वस्तुओं को चुनने के लिए डेटाबेस से पूछताछ करना है जिन्हें मैंने अभी डाला है? – Derek
आपको शायद अपने मामले में 'bulk_create' से पूरी तरह से बचाना चाहिए। बस वस्तुओं को अलग-अलग बनाएं। –
फिर व्यक्तिगत प्रदर्शन करने के साथ प्रदर्शन समस्याओं को संभालने की सलाह कैसे देते हैं? – Derek