Объект документа MongoEngine, созданный с использованием from_json, не сохраняет

Я пытаюсь построить объект документа, используя метод from_json. object.save () не выдает ошибку, но документ не вставлен в монго.

С другой стороны, если я создаю объект, присваивая значения каждому из полей, он работает нормально.

Я не могу найти причину для этого. Ниже приведен код для обоих случаев.

from flask import Flask
from flask.ext.mongoengine import MongoEngine
import json, datetime

app = Flask(__name__)
app.config["MONGODB_SETTINGS"] = {'DB': 'test','host': 'localhost'}
app.config["SECRET_KEY"] = "mySecretKey"

db = MongoEngine(app)
class User(db.Document):
    user_id = db.StringField(max_length=16, primary_key = True)
    username = db.StringField(min_length=8)
    email = db.EmailField(required = True, unique = True)
    password = db.StringField(required = True)
    date_of_birth = db.DateTimeField()
    gender = db.StringField(choices = ('M', 'F'))

'''
    This one works. This will add a user in local mongodb(test)
'''
u1 = User()
u1.username = 'test12345'
u1.user_id = 'testid12345'
u1.email = '[email protected]'
u1.password = 'testerpass'
u1.save()

'''
    This one doesn't works.
'''
u2 = User()
temp_json = {'username':'test2_12345','user_id':'testid2@12345','password':'testerpass2','email':'[email protected]'}
u2 = u2.from_json(json.dumps(temp_json))
u2.save()

Ответы на вопрос(3)

Ваш ответ на вопрос