मुझे NULL को अपडेट करने के लिए कस्टम मॉडल का मान प्राप्त करने में समस्या हो रही है।
$model = Mage::getModel('custom/model')->load($id);
$model->setCustomValue(NULL);
$model->save();
यह कोड custom_valueडेटाबेस में फ़ील्ड को अपडेट नहीं करता है, और डेटाबेस मान NULL मान (डेटाबेस में मैन्युअल रूप से NULL ठीक काम करता है) को स्वीकार करता है।
संपादित करें:
जैसा कि नीचे उल्लेख टिम का उपयोग Zend_Db_Expr("NULL")करने के लिए मूल्य शून्य करने के लिए सेट करता है, क्या कोई समझा सकता है कि यह Magento में क्यों आवश्यक है और न सिर्फ एक php NULL?
बस $ मॉडल की कोशिश करें-> setCustomValue ("");
—
मुफददल
तालिका क्षेत्र के प्रकार है
—
आह्वान
doubleऔर मैं जैसे अन्य सांख्यिक प्रकार की कोशिश की है decimalऔर कर रही $model->setCustomValue("");करने के लिए सेट मूल्य0
कैसे के बारे में
—
user487772
$null = new Zend_Db_Expr("NULL");?
@ इंवोक, अपने जवाब का जवाब देने के लिए, यदि आप इसे केवल "NULL" पर सेट करते हैं, तो Magento केवल यह सोचेगी कि आप मूल्य को अपडेट नहीं करना चाहते हैं। जैसा कि टिम ने सुझाव दिया, आपको यह निर्दिष्ट करने की आवश्यकता है कि यह "NULL" डेटाबेस है जिसे आप सेट करना चाहते हैं।
—
मेयर्स
धन्यवाद @ मेयर-देव, दिलचस्प व्यवहार। मुझे लगता है कि इसे एक गेट-आउट-क्लॉज के रूप में डिज़ाइन किया गया था, आपको स्वयं मूल्य उत्पन्न करते समय इच्छित अपडेट को रद्द करना चाहिए।
—
आह्वान