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

MyMemoWiki

「Django」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
(ページの作成:「==Django== [Python][AngularJS x Django] {{amazon|4048672096}} http://www.djangoproject.com/ ===練習=== ====[Django インストール] [インストール]==…」)
 
1行目: 1行目:
 
==Django==
 
==Django==
[Python][AngularJS x Django]
+
[[Python][AngularJS x Django]]
  
 
{{amazon|4048672096}}
 
{{amazon|4048672096}}
47行目: 47行目:
 
==Tips==
 
==Tips==
 
===バージョンの確認===
 
===バージョンの確認===
  >>> import django
+
  >>> import django
  >>> django.VERSION
+
  >>> django.VERSION
 
===[http://djangoproject.jp/doc/ja/1.0/ref/request-response.html リクエストオブジェクトとレスポンスオブジェクト]===
 
===[http://djangoproject.jp/doc/ja/1.0/ref/request-response.html リクエストオブジェクトとレスポンスオブジェクト]===
 
*[http://djangoproject.jp/doc/ja/1.0/ref/request-response.html リクエストオブジェクトとレスポンスオブジェクト]
 
*[http://djangoproject.jp/doc/ja/1.0/ref/request-response.html リクエストオブジェクトとレスポンスオブジェクト]
89行目: 89行目:
 
====SQLのロギング====
 
====SQLのロギング====
 
*http://www.dabapps.com/blog/logging-sql-queries-django-13/
 
*http://www.dabapps.com/blog/logging-sql-queries-django-13/
  >>> import logging
+
  >>> import logging
  >>> l = logging.getLogger('django.db.backends')
+
  >>> l = logging.getLogger('django.db.backends')
  >>> l.setLevel(logging.DEBUG)
+
  >>> l.setLevel(logging.DEBUG)
  >>> l.addHandler(logging.StreamHandler())
+
  >>> l.addHandler(logging.StreamHandler())
  >>> for b in Bookmark.objects.all():
+
  >>> for b in Bookmark.objects.all():
 
  ...    print b.page.url
 
  ...    print b.page.url
 
  ...     
 
  ...     

2020年2月15日 (土) 08:01時点における版

目次

Django

[[Python][AngularJS x Django]]

http://www.djangoproject.com/

練習

[Django インストール] [インストール]

  • [Django インストール] [インストール]
  • [Django 運用環境の構築] [運用環境の構築]

[Django 最初のアプリケーション 1] [最初のアプリケーション 1 (環境設定~モデルの作成)]

  • [Django 最初のアプリケーション 1] [最初のアプリケーション 1 (環境設定~モデルの作成)]

[Django 最初のアプリケーション 2] [最初のアプリケーション 2 (Adminサイトの構築)]

  • [Django 最初のアプリケーション 2] [最初のアプリケーション 2 (Adminサイトの構築)]

[Django 最初のアプリケーション 3] [最初のアプリケーション 3 (Viewの作成)]

  • [Django 最初のアプリケーション 3] [最初のアプリケーション 3 (Viewの作成)]

運用環境の構築

  • Django 運用環境の構築
  • [Django インストール 1.5.1] [Django 運用環境の構築 1.5.1]

Django APIs

Django APIs(View,Model,Forms,Template)

  • Django APIs

Django Model

  • Django Model

Django テンプレート

  • [Django APIs] [Django テンプレート]

Django ミドルウェア

  • Django ミドルウェア

Django 備忘

  • Django 備忘

Django Admin

Eclipse

Eclipse から Django

  • Eclipse から Django

Link

The Django Book

The Django Book(日本語訳)

Django チュートリアル(Codezine)

Tips

バージョンの確認

>>> import django
>>> django.VERSION

リクエストオブジェクトとレスポンスオブジェクト

Fileアップロード

  • Django Fileアップロード例

静的ファイルを提供

  • Django 静的ファイルを提供する

モデル

[Django 多対多関係の実装 多対多関係の実装]

  • Django 多対多関係の実装

日付の比較

クエリ

  • Django クエリ

JSON

Djangoのモデル

from django.core import serializers
#シリアライズ
users = User.objects.all()
print serializers.serialize("json", users)
#デシリアライズ
for item in serializers.deserialize("json", users_json):
  print str(item) 

Pythonオブジェクト

import json
#シリアライズ
l = [1,2,3]
print json.dumps(l)

#デシリアライズ
l = json.loads("[1,2,3]")

ロギング

Django ロギング設定

  • Django ロギング設定
  • Django 生成されるSQLをロギングする

SQLのロギング

>>> import logging
>>> l = logging.getLogger('django.db.backends')
>>> l.setLevel(logging.DEBUG)
>>> l.addHandler(logging.StreamHandler())
>>> for b in Bookmark.objects.all():
...    print b.page.url
...    
http://google.co.jp
http://yahoo.co.jp
(0.000) SELECT "Bookmark_bookmark"."id", "Bookmark_bookmark"."page_id", "Bookmark_bookmark"."user_id" FROM "Bookmark_bookmark"; args=()
(0.000) SELECT "Bookmark_page"."id", "Bookmark_page"."url" FROM "Bookmark_page" WHERE "Bookmark_page"."id" = 1 ; args=(1,)
(0.004) SELECT "Bookmark_page"."id", "Bookmark_page"."url" FROM "Bookmark_page" WHERE "Bookmark_page"."id" = 2 ; args=(2,)

DjangoのテストでSQLをロギングする

  • セットアップでロガーを有効にする
from django.conf import settings
from django.test import TestCase
from django.test.client import Client

class SimpleTest(TestCase):
    @staticmethod
    def setUpClass():
        settings.DEBUG = True
        import logging
        l = logging.getLogger('django.db.backends')
        l.setLevel(logging.DEBUG)
        l.addHandler(logging.StreamHandler())

jQuery

jQueryから配列を送りDjangoで受け取る

  • jQueryから配列を送りDjangoで受け取る

jQuery UI のAutocompleteをDjangoで実装

  • jQuery UI のAutocompleteをDjangoで実装

開発サーバー

  • Django 開発サーバーに他ホストから接続

AngularJS

AngularJS DjangoのCSRFトークンを送信するようにconfigで設定する

認証

デプロイ

CentOS

AWS

デバッグ

デバッグモードを利用

views
from django.conf import settings
def ag_basic(request):
    t = loader.get_template('test.html')
    print settings.DEBUG
    c = RequestContext(request,
        {'DEBUG':settings.DEBUG}
        )
    return HttpResponse(t.render(c))
template
{% if DEBUG %}
DEBUG
{% else %}
RELEASE
{% endif %}

Django 1.7.1 のユニットテストをPyDevで実行するとAppRegistryNotReadyが発生する