我執行查詢到我的位子在Django模板中的Unicode字符和我的數據傳遞給語境詞典:防止渲染
conn = psycopg2.connect(constr)
cur = conn.cursor()
sqlstr = "SELECT DISTINCT adm0_name FROM wld_bnd_adm0_gaul_2015 ORDER BY adm0_name;"
cur.execute(sqlstr)
countries = cur.fetchall()
ctx['countries'] = countries
然後,我要呈現在我的模板數據以下:
{% if countries %}
{% for cntr in countries %}
<li><a href="#" id= {{ cntr }}>{{ cntr }}</a></li>
{% endfor %}
{% endif %}
的問題是,我得到一個Unicode格式如下:
[(u'Abyei',), (u'Afghanistan',), (u...
我試着我的數據轉換的視圖中的JSON爲:
countries = json.dumps(countries)
但實際上,後來當我呈現模板中的數據分開我得到的JSON字符串的每一個字符。
,你會得到一個字符串(如:「[ 「阿卜耶伊」],[「阿富汗」]]');這就是爲什麼你在循環中獲得單個字符的原因 – dazedconfused
任何你沒有使用django orm並對原始SQL查詢進行簡單SELECT的原因? –
@Muhammad Tahir是的。其實我沒有在我的DB這個表格中作爲模型傳遞。該表位於不同的數據庫中,我直接執行原始SQL查詢。如果我在django db中將它作爲模型傳遞,也許會更好。 – user1919