python - Duplicate django query set? -


मेरे पास एक साधारण डीजेंगो क्वेरी सेट है:

  qs = AModel.objects.exclude (राज्य = "एफ")। Order_by ("order")  

मैं इसका उपयोग निम्नानुसार करना चाहूंगा:

  qs [0: 3 ] .अपडेट (राज्य = 'एफ') अपेक्षित = qs [3] # त्रुटि यहाँ फेंकता  

लेकिन अंतिम कथन फेंकता है: "एक टुकड़ा लिया गया है एक बार एक क्वेरी अपडेट नहीं किया जा सकता है।" < / P>

मैं क्वेरी सेट को डुप्लिकेट कैसे कर सकता हूं?

यह त्रुटि फेंकने वाली पहली पंक्ति है : आप qs नहीं कर सकते [0: 3] .update () क्यू [0: 3] एक टुकड़ा ले रहा है; अपडेट () क्वेरी अपडेट कर रहा है।

अपडेट () बल्क अपडेट के लिए है, जिसके परिणामस्वरूप एसक्यूएल क्वेरीज़ जैसे

  UPDATE एप_मॉडेल SET state = 'F' WHERE state & lt ; & gt; 'एफ';  

आप "आदेश" के अनुसार पहले तीन वस्तुओं को अपडेट करने की कोशिश कर रहे हैं, लेकिन यह इस प्रकार के अद्यतन के साथ नहीं किया जा सकता - आप किसी एसक्यूएल को ऑर्डर करने या सीमित नहीं कर सकते हैं अद्यतन। इसे अलग तरह से लिखे जाने की ज़रूरत है, उदा।

  UPDATE एप_मॉडल एसईटी स्टेट = 'एफ' जहां आईडी (एप_मॉडेल से राज्य का चयन करें एफ़एलएसी & lt; & gt; एफ 'ऑर्डर बाय ऑर्डर सीमा 3) एएस उप;  

लेकिन Django आपके लिए ऐसा नहीं कर सकता।


Comments

Popular posts from this blog

c# - ListView onScroll event -

PHP - get image from byte array -

Linux Terminal Problem with Non-Canonical Terminal I/O app -