ross = User(username='Ross').save()
Inbox(from_user=ross, subject='Mongoengine should make json easier').save()
doc = Inbox.objects.only('from_user', 'subject', 'created_at').get()
print(doc.to_json())
{'_id': {'$oid': '538c3d71c3d384172fe35393'}, 'from_user': {'User': {
    'username': 'Ross'}}, 'subject': 'Mongoengine should make json easier',
    'created_at': {'$date': 1401703297198}, 'messages': []}
How to get ReferenceField data in mongoengine?