さくらVPS 512MB契約→Ubuntu 10.04 64bit

Written by uechoco 7月 29
この記事を読む時間:28くらい

急な思いつきで、さくらVPSの512MBプランに契約しました。

で、またまた思いつきで、カスタムOSインストールして 普段全く使わないUbuntuにしてみました。

Nginxとか、php-fpmとか、いろいろと未知の世界を体験しようかと思ってます。

ちなみに、この記事はまだServerman@VPSで書いてます。近日中には さくらVPS上で表示するようにします。

[Django]Caught AttributeError while rendering: ‘NoneType’ object has no attribute ‘label’

Written by uechoco 7月 27
この記事を読む時間:148くらい

Django 1.2.6を使っているのですが、

  • ModelFormをテンプレートで{{ form }}で表示している
  • ModelFormはMetaクラスでfields属性でカラムを制限している

ときに

  1. Caught AttributeError while rendering: 'NoneType' object has no attribute 'label'

というエラーによく遭遇する。

書いたコードはこんな感じ

  1. # -*- coding: utf-8 -*-
  2. from django import forms
  3. from foo.models import Hoge
  4.  
  5. class HogeCreationForm(forms.ModelForm):
  6.     """
  7.    Hogeを登録するためのフォーム
  8.    """
  9.     class Meta:
  10.         model = Hoge
  11.         fields = ('name')

何が間違っているかというと、fieldsのタプルが1項目しかないので、タプルとして認識されていない。

  1. class HogeCreationForm(forms.ModelForm):
  2.     class Meta:
  3.         model = Hoge
  4.         fields = ('name', )

というようにタプルのカンマが抜けているのが原因だった。タプル慣れないね。