2012-09-12 6 views
10

पर TypeError फेंकता है मुझे यकीन नहीं है कि यह मोंगोइंजिन के भीतर एक बग है या मुझे कुछ याद आती है। मैं निम्नलिखित मॉडल की स्थापना की है अप:एंबेडेड डॉक्यूमेंट के भीतर मोंगोइंजिन लिस्टफिल्ड सत्यापन

class Features(EmbeddedDocument): 
    version = FloatField() 
    data = ListField(StringField) 

class Article(Document): 
    vendor = ReferenceField(Vendor) 
    url = URLField() 
    author = StringField() 
    clean_content = StringField() 
    features = EmbeddedDocumentField(Features) 

जब मैं इस तरह अपने मॉडल का परीक्षण:

#add vendor 
vendor = Vendor(name="techcrunch", config="vendor config") 
vendor.save() 

#create features 
features = Features(version = 1.0) 
features.data = ["5", "89"] 

#add article 
article = Article(vendor = vendor, url ="http://www.techcrunch.com", 
        author ="MG Siegler", clean_content = "Apple rocks!") 
article.features = features 
article.save() 

मैं निम्नलिखित त्रुटि मिलती है:

TypeError: unbound method _validate() must be called with StringField instance as first argument (got str instance instead) 

कोई व्याख्या कर सकते हैं कि?

संपादित करें:

कभी नहीं। मुझे मेरी त्रुटि मिली।

यह हो गया है:

class Features(EmbeddedDocument): 
    version = FloatField() 
    data = ListField(StringField()) 
+1

आप अपने उत्तर पोस्ट और जवाब के रूप में प्रश्न चिह्न चाहिए:

यह हो गया है! – Ross

+1

मैं भूल गया। धन्यवाद। – Karsten

उत्तर

13

मैं त्रुटि पाया।

class Features(EmbeddedDocument): 
    version = FloatField() 
    data = ListField(StringField()) 
संबंधित मुद्दे