2013-03-11 7 views
10

मैं एक नई परियोजना शुरू कर रहा हूं और मैं Django 1.5 का उपयोग कर रहा हूं। मुझे पता चला कि स्थानीय फ्लेवर सामान Django 1.5 से हटा दिया गया है और अब एक अलग स्थापित करने योग्य पैकेज है। तो मैंने इसे स्थापित किया। मेरी models.py में मैं अमेरिका localflavors का आयात कर रहा हूँ मेरी राज्यों पाने के लिए:Django 1.5 में स्थानीय स्तर के संबंध में Django दक्षिण मुद्दे को कैसे ठीक करें?

from django_localflavor_us.models import USStateField 

अपने मॉडल में, मैं इस क्षेत्र है:

state = USStateField(default='VA') 

जब मैं दक्षिण के साथ एक प्रवास को चलाने के लिए प्रयास करते हैं, मुझे अब निम्न संदेश मिलता है:

! फ़ील्ड 'playerstats.location.state' को फ्रीज नहीं कर सकता! (इस क्षेत्र में कक्षा django_localflavor_us.models.USStateField है)

! दक्षिण कुछ क्षेत्रों का आत्मनिरीक्षण नहीं कर सकता; ऐसा शायद इसलिए है क्योंकि वे कस्टम हैं! खेत। अगर वे 0.6 या उससे नीचे काम करते हैं, तो ऐसा इसलिए है क्योंकि हमने हटा दिया है! मॉडल पार्सर (यह अक्सर चीजों को तोड़ देता है)। ! इसे ठीक करने के लिए, http://south.aeracode.org/wiki/MyFieldsDontWork

मैं विकी आलेख के माध्यम से पढ़ता हूं, लेकिन मुझे यह बहुत verbose और जटिल लगता है। मेरा यूएसस्टेटफिल्ड अब 1.5 में कस्टम फ़ील्ड नहीं माना जाता है? क्या कोई और 1.5 में इस मुद्दे में भाग गया है? और आपने इसे कैसे हल किया?

उत्तर

8

क्या आपने आत्मनिरीक्षण नियम जोड़ने का प्रयास किया है?

add_introspection_rules([], ["^django_localflavor_us\.models\.USStateField"]) 
+0

यह काम किया! अब मैं समझ गया। – user338413

2

मुझे काम करने के लिए हेडडे वैन डेर हेइड के समाधान को ट्विक करना पड़ा। यह इस तरह दिखता है:

add_introspection_rules([], ["^localflavor\.us\.models\.USStateField"])

12

Django-localflavor संस्करण 1.0 के रूप में, बस अपने INSTALLED_APPS करने के लिए "localflavor" जोड़कर आप सभी दक्षिण पाने के लिए ठीक से लेने की जरूरत है। https://django-localflavor.readthedocs.org/en/latest/?highlight=south#installation

+0

बिल्कुल सही, धन्यवाद। – Robeezy

संबंधित मुद्दे