在测试我与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