我一直在使用 Flask 和 MongoEngine,但在尝试保存对象时遇到了麻烦,因为 ReferenceField。
这是我的模型的样子:
class User(UserMixin, db.Document):
first_name = db.StringField(max_length=255, required=True)
last_name = db.StringField(max_length=255, required=True)
email = db.StringField(max_length=255)
class Post(db.Document):
description = db.StringField(max_length=255, required=True)
inserted_at = db.DateTimeField(default=datetime.datetime.now, required=True)
tags = db.ListField(db.EmbeddedDocumentField('Tag'))
comments = db.ListField(db.EmbeddedDocumentField('Comment'))
user = db.ReferenceField('User')
这就是我创建 Post 对象的方式:
user = User.objects.filter(id=current_user.id).first()
post = Post(
description = request.json["description"],
user = user
)
我也试过:
user = current_user._get_current_object()
但我不断得到:
InvalidDocument: Cannot encode object: <User: User object>
关于发生了什么的任何想法?
谢谢!