| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
251 バイト追加 、 2020年2月15日 (土) 08:01
編集の要約なし
==Django APIs==
[[Django][Python]]
*http://docs.djangoproject.com/en/dev/
{{amazon|4048672096}}
====Field.db_index====
*True に設定した場合、以下のようにCREATE INDEX 文を出力できる。
C:\work\py\django\mysite>>python manage.py sqlindexes myapp1
BEGIN;
CREATE INDEX "myapp1_mymodel1_field1" ON "myapp1_mymodel1" ("field1");
=====【注意】required=False=====
<&lt;blockquote>&gt;Field の派生クラスは、バリデーションの設定が、required=Trueだが、required=False としないと、チェックONでない場合、form.is_valid()が失敗してしまう。<&lt;/blockquote>&gt;
====CharField====
====CommaSeparatedIntegerField====
:
*テンプレート
<&lt;form action='/hogehoge/' method='POST'>&gt;
{% if form %}
BAR:{{form.bar}}
return render_to_response('test/index.html', ctx)
*index.html
<&lt;table>&gt;
{% for i in rows %}
<&lt;tr><&gt;&lt;td>&gt;{{ i }}<&lt;/td><&gt;&lt;td><&gt;&lt;input type="text"><&gt;&lt;/td><&gt;&lt;/tr>&gt;
{% endfor %}
<&lt;/table>&gt;
*結果
[[File:0383_django_template_tag_for01.jpg]]
=====アイテムを繰り返し処理する=====
{% for itm in item_list %}
<&lt;a href="{{itm.detailPageURL}}"><&gt;&lt;img src="{{itm.smallImageURL}}"/><&gt;&lt;/a> &gt;
{% endfor %}
*2 つの引数が等しい場合にブロックを出力する。
{% ifequal style 'text' %}
<&lt;div>&gt;
スタイル変数が 'text' の場合このブロックを出力
<&lt;/div>&gt;
{% endifequal %}
===テンプレートの継承===
=====基底=====
*派生でオーバーライドする箇所を、block [名前] ~ endblock で作成
<&lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">&gt; <&lt;html>&gt; <&lt;head>&gt; <&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8">&gt;
{% block html_header %}
{% endblock %}
<&lt;/head>&gt; <&lt;body>&gt;
{% block content %}
{% endblock %}
<&lt;/body>&gt; <&lt;/html>&gt;
=====派生=====
{% extends "base.html" %}
{% block html_header %}
<&lt;script type="text/javascript"><&gt;&lt;!-- //--><&gt;&lt;/script>&gt; <&lt;title>&gt;Title<&lt;/title>&gt;
{% endblock %}
{% block content %}
*mod 演算の代替として使える
=====例=====
<&lt;table>&gt; <&lt;tr>&gt;
{% for num in numlist %}
<&lt;td align='right'>&gt;{{ num }}<&lt;/td>&gt; <&lt;td><&gt;&lt;input type='text' size='6'><&gt;&lt;/td>&gt;
{% if num|divisibleby:"4" %}
<&lt;/tr><&gt;&lt;tr> &gt;
{% endif %}
{% endfor %}
<&lt;/tr>&gt; <&lt;/table>&gt;
=====結果=====
[[File:0382_django_template_tag_div01.jpg]]
==Forms==

案内メニュー