Hi,
I've wrote a lib to integrate together marshmallow serialization with mongoengine : the well named marsmallow-mongoengine !
I think it would be a good idea to move it into the MongoEngine's team along with flask-mongoengine and others. This would give it much more visibility.
What do you think ?
I agree on the principle, as long as it is maintained, it is better off hosted in ME organization.
I had a quick glance and I still don't understand exactly what it is for. Is it meant to be an alternative to ME's [to|from]_json ?
@lafrech marshmallow is a serialization/deserialization library, it is use to communicate with a client (not trusting it input and returning the data in a certain converted format, typically to send it as JSON)
ex in pseudocode:
# json input from client
{'date': "2015-08-12T00:00:00Z"}
# deserialize with marshmallow
{'date': datetime(2015, 8, 12)}
# load it into mongoengine
MyObj(date=datetime(2015, 8, 12), other_field=EmbeddedDocument(a="B", b=2))
# finally serialize back for the client
{'date': "2015-08-12T00:00:00Z", "other_field": {"a": "B", "b": 2}}
The only trouble is to use marshmallow you have to specify a schema for serialization/deserialization. Given you already have defined a schema with the mongoengine document, this is cumbersome and error-prone.
So marhmallow-mongoengine allow you to create marshmallow schema from your mongoengine document.
Hi. I've been using marshmallow-mongoengine recently, so I now have a clearer view of what it does.
I support its integration in MongoEngine organization.
@MongoEngine/mongoengine, any objection?
@touilleMan, I don't think anybody objects to moving marshmallow-mongoengine here.
@MongoEngine/mongoengine @lafrech I don't have the right to do fork touilleMan/marshmallow-mongoengine into MongoEngine/marshmallow-mongoengine, can an admin do this ? I'll add a note on my repo's readme then.
@MRigal, @rozza @thedrow, can you do that? Or promote @touilleMan owner so that he can do it?
Thanks.
Done :)
https://github.com/MongoEngine/marshmallow-mongoengine
Before we close this issue please ensure that the README file on your fork points to the official repo.
@thedrow can you give me write access to this new repo, I need to setup the travis to release on pypi from there
I'm sorry this took so long. @touilleMan You now have permissions to the repository.
@thedrow @lafrech I've done the migration, making a tag within MongoEngine/marshmallow-mongoengine should release a new version on Pypi automatically.