メールアドレス・名前を格納する簡単なテーブル(クラス)を定義してみます。
ファイルはプロジェクトホームディレクトリから、maildb/models.pyにあるとします。
1 2 3 4 5 | from django.db import models class Mail(models.Model): name = CharField() address = EMailField() |
これだけです。
細かなオプションはありますが、基本的にはこれだけでメールアドレスと名前を格納できる テーブルが実現できます。
ちなみに、CharFieldは文字列型のカラム、EMailFieldも文字列型のカラムですが、 値がメールフォーマットに従っているかをチェックする機能が付加されています。
モデルクラスの定義が終わったら「python manage.py syncdb」で実際に テーブルを作成しましょう。
あとは、これをプログラム側からインポートして使用するだけです。
Djangoでは専用のインタープリタも用意されていますので、それでテーブルに対して アクセスすることもできます。
インタープリタを起動するには「python manage.py shell」を実行しましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | $ python manage.py shell >>> from maildb.models import Mail >>> m = Mail.objects.get(name='hoge') #nameカラムが'hoge'のレコードを取得 >>> print m.name >>> print m.address >>> am = Mail.objects.all() #格納されているすべてのレコードをリストとして取得 >>> Mail.objects.order_by("-name") #格納されているすべてのレコードを名前の辞書式の降順(-)で取得 #"+name"と指定すると昇順となる。 >>> m.name = 'hogehogehoge' >>> m.update() #カラムmのUPDATE >>> Mail.objects.count() #mailテーブルのレコード数を返す |