Q: Only one field gets saved in Python mongoengine model I'm having an issue that only one of the fields are being saved on a mongoengine model.
Here is the class definition:
from mongoengine import *

connect('leads')

class Contact(Document):
  name = StringField()
  email = StringField()
  phone = StringField()
  company = StringField()
  title = StringField()
  message = StringField()

In the python terminal, I run:
>>> from Contact import Contact
>>> contact = Contact(name='myrtle williams', email='myrtlewilliams@gmail.com', phone='1234567890', title='president', message='asdfsadf')
>>> contact.save()

Then, in mongo, I query and all I see is a document with the field "message" saved:
{
    "_id" : ObjectId("503cfa86d0d9b317a258e136"),
    "_types" : [
        "Contact"
    ],
    "message" : "asdfsadf",
    "_cls" : "Contact"
}

Why aren't the rest of the fields saved?

A: I tried to run your code and it works well for me (mongodb 1.8.2, mngoengine 0.6.20, pymongo 2.2.1). 
{ 
    "_id" : ObjectId("503cfceb6cb71a38d4a4cd4e"), 
    "_types" : [ "Contact" ], 
    "name" : "myrtle williams", 
    "title" : "president", 
    "phone" : "1234567890", 
    "_cls" : "Contact", 
    "message" : "asdfsadf", 
    "email" : "myrtlewilliams@gmail.com" 
}

The most likely you faced up an issue related to one of the old releases of mongoengine.

A: Your test code looks fine and MongoEngine has had similar test cases ensuring it from before I joined the project in the 0.4 days.
I can think of two possible reasons for the different data:


*

*You have old test data in the database - from a previous version of Contact

*You are importing a differently defined Document from the one described when doing:
from Contact import Contact
