2013-12-23 67 views
0

我正在嘗試將Mongodb文本搜索與Python應用程序集成。爲此,我按照以下方式編寫了代碼,但是我沒有得到結果,也沒有發現任何錯誤。控件不在搜索函數內部,任何人都可以幫助我嗎? 謝謝你在進階如何將mongodb文本搜索與python應用程序集成?

from flask import Flask 
from flask import request 
app = Flask(__name__) 
import pymongo as pym 
c = pym.Connection() 
db = c['DbName'] 
#for searching 

@app.route('/search') 
def search(): 
    print "prashant" 
    query = request.form['15310773'] 
    text_results = db.command('text','collection_name',search=query,limit=100) 
    doc_matches = (res['obj'] for res in text_results['results']) 
    return render_template('search.html','results=results') 

if __name__ == "__search__": 
    app.run() 

回答

0

如果你正在尋找創建結果的對象列表中您的模板進行迭代,你需要改變你的列表中理解到使用方括號,而不是括號:

doc_matches = [res['obj'] for res in text_results['results']] 

接下來,不應引用render_template的第二個參數。嘗試將其更改爲

return render_template('search.html', results=results) 

並查看是否有幫助。

+0

是的非常感謝iandouglas,我做了你所告訴的變化,但它仍然無法正常工作。當我運行程序時,我得到以下內容,*運行在http://127.0.0.1:5000/上,當我在瀏覽器中粘貼這個URL時,我得到了404錯誤,因爲「在服務器上找不到請求的URL。請手動輸入網址,請檢查拼寫並重試。「 – user3128542

+0

http://127.0.0.1:5000/search?你目前沒有一個url路徑來處理'/'這是有道理的,只是http://127.0.0.1:5000/給你一個404。 – iandouglas

相關問題