[英]Django + MongoDB
我試圖將MongoDB與Django一起使用。 我已按照本指南進行設置,以便安裝所有必要的東西。 MongoDB + Django教程我的問題如下:當我在views.py
嘗試運行cities = City.objects.get()
,我收到以下錯誤:
DoesNotExist at /GetAllCities/
City matching query does not exist.
我的MongoDB看起來像這樣
Databasename = "exjobb"
Collectioname = "cities"`
它包含30,000行數據,它適用於我的Rails和PHP應用程序。
我的模型類看起來像這樣
from django.db import models
from django.core.urlresolvers import reverse
from djangotoolbox.fields import ListField, EmbeddedModelField
# Create your models here.
class City(models.Model):
city = models.TextField()
loc = models.TextField()
population = models.IntegerField()
state = models.TextField()
_id = models.IntegerField()
def __unicode__(self):
return self.city
數據庫中的一行看起來像這樣
{
"city" : "ACMAR",
"loc" : [
-86.51557,
33.584132
],
"population" : 6055,
"state" : "AL",
"_id" : "35004"
}
我找到了解決方案。 問題是我不知道如何選擇使用哪個集合。 所以Django創建了一個名為“myAppName_cities”的新集合。
要告訴django使用哪個集合,只需添加一個這樣的元類。
class City(models.Model):
city = models.TextField()
loc = models.TextField()
population = models.IntegerField()
state = models.TextField()
#Specify collection in the MongoMetaclass
class MongoMeta:
db_table = "cities"
如果你想獲得數據庫中的所有城市,你應該使用
cities = City.objects.all()
City.objects.get
需要一個關鍵字參數來搜索並且只返回一條記錄。 如果發現異常,則引發異常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.