1

まず第一に、django、python、htmlの跛行について失礼します。

ウィジェットをhtmlに追加し、データベースからアイテムを入力したいと思います。次のことを試しましたが、機能しません。明らかな('ALL'アイテム)のみが表示されます。

HTML:

<select name=\"accountName\" >
    <option value=\"ALL\">ALL</option>
    {% for item in select_items %}
    <option value=\"'+item.accountName+'\">'+item.accountName+'</option>
    {% endfor %}
</select>

Python:

class StartPage(webapp.RequestHandler):
    def get(self):
    select_items = db.GqlQuery( "SELECT * FROM Registration" )
    self.response.out.write(template.render("tst.html", {'select_items': select_items}))

DBには空ではなく、ものが含まれていることに注意してください。ありがとう

4

3 に答える 3

3

私はdjangoの専門家ではありませんが、テンプレートにエラーがあると思います。

<option value=\"'+item.accountName+'\">'+item.accountName+'</option>

する必要があります

<option value="{{ item.accountName }}">{{ item.accountName  }}</option>

詳細については、 https ://docs.djangoproject.com/en/dev/topics/templates/をご覧ください。

于 2012-06-21T12:21:08.170 に答える
3

djangoの構文が間違っています。次のようになります。

{% for item in select_items %}
<option value="{{item.accountName}}">{{item.accountName}}</option>
{% endfor %}

また、二重引用符をエスケープするべきではありません。たとえば、

<select name=\"accountName\" >

単にする必要があります

<select name="accountName" >

また、Pythonコードにはインデントの問題がありますが、これはコードの実際の問題ではなく、ここに貼り付けた方法に関係していると思います。

于 2012-06-21T12:21:17.137 に答える
2

HTMLをエスケープしたいとは思わない。

<select name="accountName" >
    <option value="ALL">ALL</option>
    {% for item in select_items %}
    <option value="{{ item.accountName }}">{{ item.accountName }}</option>
    {% endfor %}
</select>

残りは一見大丈夫に見えますが、私のGAEは錆びています。

うまくいけば、あなたはより良い答えを得るでしょう。

于 2012-06-21T12:21:01.203 に答える