0

私は問題があります。Tornadoハンドラーで、いくつかのパラメーターをhtmlページに渡します。

このページのコードは次のとおりです。

 {% if not writeable %}
    {% if not usrpermdev %}
    $("#chart_div").html("<div class='alert'><strong>Warning!</strong> You don't have the permission to view this page.</div>")
    {% elif usrpermdev==0 %}
    $("#chart_div").html("<div class='alert'><strong>Warning!</strong> You don't have the permission to view this page.</div>")
    {% end %}
  ......

<div>いくつかの権限がある場合に要素を表示するかどうかを指定したいので、このように終了します。

トルネードハンドラーにいくつかのプリントを入れると、たとえば次のようになります。

usrpermdev = [{'perm': 4L}]
writeable = False

では、なぜ私のコードはコントロールの後に何も表示されないのですか?

コードがif(書き込み不可)に入力されている場合は、usrpermdevが存在するかどうかを確認します。この場合、プログラムは次のifと続行の両方に入る必要はありません....なぜこれが起こらないのですか?

PS。何も表示されません....警告アラートも表示されません!したがって、プログラムはif(s)に入力しませんが、続行しません...

4

3 に答える 3

1

私はあなたと同じ問題を抱えています。しかし、私が設定した場合

{% if writeable=="False" %}

それでもうまくいきません。tornado は if 節のブール値を気にしないようです。書き込み可能な値を True または False に変更した場合は、テンプレートに出力します

{{ writeable }}

次のようなテキストが表示されます

真実

または

間違い

しかし、それはまだif 節に行きません。PS Linux ではトルネード 4.2.1 です。とても奇妙!


アップデート

解決済み

この句を使用してこれを修正しました{% if writeable is False %}。覚えておいてください。これは、テンプレート ブロックの上部ではなく、テンプレート ブロックの下で使用する必要があります。

于 2015-08-13T01:54:56.610 に答える
0

usrpermdevifもの条件を満たしていませんelif

于 2013-03-13T12:29:35.193 に答える
-1

コードを次のように修正します。

{% if writeable=="False" %}
{% if not usrpermdev %}
$("#chart_div").html("<div class='alert'><strong>Warning!</strong> You don't have the permission to view this page.</div>")
{% elif usrpermdev==0 %}
$("#chart_div").html("<div class='alert'><strong>Warning!</strong> You don't have the permission to view this page.</div>")
{% end %}

このようにうまくいくようです...とにかくありがとう。

于 2013-03-13T12:48:09.260 に答える