Djangoのコーディングスタイル

[参考サイト] Django v1.0 documentation コーディングスタイル

■ 全般
(1) インデントはスペース4つ
(2) 変数名、関数名、メソッド名は、lower_snake_case
(3) クラスは UpperCamelCase

■ テンプレートのスタイル
(1) 波かっことタグコンテンツの間に 1 個だけスペース {{ foo }}

■ ビューのスタイル
(1) 最初のパラメタは必ず「request」 def my_view(request, foo):

■ モデルのスタイル

(1) フィールド名は、lower_snake_case first_name = models.CharField(max_length=20)

(2) class Meta は、フィールド定義後に、1行開けて書く

class Person(models.Model):
    first_name = models.CharField(max_length=20)
 
    class Meta:
        verbose_name_plural = 'people'

(3) 内部クラスや標準メソッドの順番は下記の通り。省略可。
   ・全てのデータベースフィールド
   ・class Meta
   ・def __unicode__()
   ・def __str__()
   ・def save()
   ・def get_absolute_url()
   ・カスタムのメソッド定義

(4) 選択肢をモデルフィールドに定義する場合、タプルで定義する。
   モデルモジュールの冒頭か各モデルクラスのすぐ上に置き、変数名は全て大文字。

GENDER_CHOICES = (
    ('M', 'Male'),
    ('F', 'Female'),
)