顯示具有 template 標籤的文章。 顯示所有文章
顯示具有 template 標籤的文章。 顯示所有文章

2015-06-05

django 樣版 列出所有 form error 的方法

django 樣版 列出所有 form error 的方法
{{form.non_field_errors}} ==> 列出 global error
{{ field.errors }} ==> 跟欄位有關的 error


方法一:
         {% if form.errors %}
          <div class="alert alert-error">
            <button type="button" class="close" data-dismiss="alert">×</button>
            {{form.non_field_errors}}
            {% for field in form %}
              {% if field.errors %}
                <li>{{ field.label }}: {{ field.errors }}</li>
              {% endif %}
            {% endfor %}
          </div>
        {% endif %}



方法二:
            {% for field, errors in form.errors.items %}
              {% for error in errors %}
                {{error}}
              {% endfor %}
            {% endfor %}
                     


註:只帶訊息不帶 <ul> <li> 方法
form.errors.backup_email.0 (加個.0 , 取 str)

2015-05-12

django compressor 找不到 offline manifest 問題解法

如果你用 django compressor,而且你用的是 offline compress
COMPRESS_ENABLED = True
COMPRESS_OFFLINE = True
那麼你有可能會遇到以下錯誤訊息

  1. You have offline compression enabled but key "70be2d0f8286eb3a32bfe94a55518c8f" is missing from offline manifest. You may need to run "python manage.py compress".
這代表你的 compress tag 包夾的內容含有動態性的資料
因為 compressor 是用內容 hash 成 hash code 去 lookup cached javascript
所以 offline compress 的東西產生的 hash code 會跟你線上得到的 code 不一樣
例如以下這個例子,拿掉{{user.email}}即可正常
  1. {% compress js %}
  2. ......
  3. formData.append('email', '{{ user.email }}');
  4. ......
  5. {% endcompress %}
請確保你的 compress 是壓縮最內層、乾淨的「靜態」資料

2015-04-29

django template 樣版引擎 語法與其它工具衝突的解法


使用 {% verbatim %}
例如底下的字串 '<div><strong>{{value}}</strong> – {{year}}</div>' 中的 {{value}}, {{year}}你不想 django template解譯


你可以: