[問題] Django 抓取mongodb問題

看板Python作者 (喵的~~喵咪)時間6年前 (2017/12/12 17:14), 6年前編輯推噓4(402)
留言6則, 3人參與, 6年前最新討論串1/1
小弟最近開始研究Django 這一兩天遇到個問題上網查不到解決方式 想請問有沒有人知道該如何解決 因為mongodb可以直接存Json的資料 但是存入mongodb之後不知道如何直接抓取底下資料 { "_id" : ObjectId("5a1b6d4a4e383757faca9799"), "gender" : "male", "userinfo" : { "year" : "35", "phone" : "123", "address" : "xxxxxx", } } 例如我的資料表長的像以上這樣 然後我下指令 m = userdata.objects.filter( gender='male').distinct('userinfo','year') 想將userinfo底下的year去除重複值 但是distinct('userinfo','year')這樣是不對的 上網查半天也找不到方式解決 想請問這該如何解決 以及gender='male' 如果想改查詢 userinfo:year的話 該如何修改? 希望有人可以幫忙一下,謝謝QQ ================ 感謝推文兩位的幫忙 今天我改用Pymongo就可以解決了 順便附上解決方式方便以後有人有同樣問題可以查詢 client = pymongo.MongoClient('host',port) db = client.test collection = db.testdb a = collection.find({'gender':'male'}).distinct('userinfo.year') -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 104.196.56.190 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1513070041.A.EC2.html

12/12 17:17, 6年前 , 1F
我覺得可以用pymongo直接用耶 不一定要用Django提供的
12/12 17:17, 1F

12/12 17:17, 6年前 , 2F
方式
12/12 17:17, 2F

12/12 17:19, 6年前 , 3F
如果要用Django提供的 用ObjectID找會比較好
12/12 17:19, 3F

12/12 18:02, 6年前 , 4F
我只會pymongo find({"userinfo.year"}) 這樣應該可以
12/12 18:02, 4F

12/12 18:10, 6年前 , 5F
剛好在學一點東西 goo.gl/kXGXYP
12/12 18:10, 5F
※ 編輯: sutekidesune (14.221.118.234), 12/13/2017 11:18:44

12/18 19:55, 6年前 , 6F
pymongo加aggregate很方便
12/18 19:55, 6F
文章代碼(AID): #1QBvtPx2 (Python)