使用Django将mongoDB列中的值获取到HTML表中

时间:2018-09-16 21:10:51

标签: python html django mongodb pymongo

我想从HTML表中的mongoDB列中获取值。

这是在views.py

import pymongo
from pymongo import MongoClient
from pymongo.read_preferences import ReadPreference


myclient = pymongo.MongoClient("mongodb://00.00.00.0:27017")
mydb = myclient["dbName"]
mycol = mydb["thePages"]

def pages(request):
  for x in mycol.find({},{ "_id": 0, "url": 1 }):
    return HttpResponse("<table border=1><tr><td> " + str(x) + "</td></tr></table>") 

urls.py:

 path('page/thePages', views.thePages, name = 'thePages'),

结果:

{'pageName': 'Google'}

预期结果:

Google
Bing
Facebook
StackOverflow

我是Django的新手。请帮忙。我知道我需要一个循环来获取列中的所有值以及上面显示的格式。我需要一种解决方法。任何帮助都将非常有帮助。

1 个答案:

答案 0 :(得分:0)

def pages(request):
    table_start = "<table border=1><tr>"
    table_end = "</tr></table>"
    table_data = []
    for x in mycol.find({}, {"_id": 0, "url": 1}):
        if 'pageName' in x:
            table_data.append("<td> " + x['pageName'] + "</td>")
    return HttpResponse(table_start + ' '.join(table_data) + table_end)

希望这会有所帮助!您可以保存所有结果,然后返回HTML响应。