在测试我与 MongoDB 的连接时,我将以下内容放入我的models.py
. 我不得不更改它的某些部分(JSONField
),因为我使用的是较新版本的 Django 1.8.7,这似乎使它无法正常工作:
from django.db import models
from jsonfield import JSONField
class Post(models.Model):
title = models.CharField(max_length=200)
text = models.TextField()
tags = JSONField()
comments = JSONField()
然后我运行:
from testapp.models import Post
post = Post.objects.create(
title='Hello MongoDB!',
text='Just wanted to drop a note from Django. Cya!',
tags=['mongodb', 'django']
)
post.comments = []
post.comments.extend(['Great post!', 'Please, do more of these!'])
post.save()
脚本的最后一行导致错误:
TypeError: int() argument must be a string or a number, not 'ObjectId'
我的配置:Django 1.8.7、Python 2.7、Django-nonrel 1.6、django-mongodb-engine 0.6.0