事前確認事項

Southとは: intelligent schema and data migrations for Django projects
http://south.aeracode.org/

設定箇所

MacPort?をインストールするには、ちとAirが問題ありだったので、Homebrewにしてみた

http://mxcl.github.com/homebrew/

確認方法

勉強

django.contrib.sites

  • 一つのデータベースで複数のサイトを運用出来るようにする仕組み
  • django.contrib.sites.models.SiteをFKとしてモデルを定義すれば複数サイトで同じテーブルを使う事が可能

ContextProcessor?

  • テンプレートレンダリング時に渡す変数を定義出来る

エラー時には

_mysql_exceptions.OperationalError?: (1025, "Error on rename of './blog/#sql-12f_7' to './blog/mymemories' (errno: 150)")

$ python manage.py schemamigration mymemories --settings=aya --auto
$ python manage.py migrate mymemories --settings=aya

上記コマンドを打って出たエラー

MySQLにコマンドで入ってIndexから消すのがよさげ

need more than 1 value to unpack

なんか分からないけど、こういうのが出たときはテンプレートの設定がうまくいってないみたいなので、settings.pyとかloadしているテンプレートのパスを確認する

nothing to repeat

urlpatternの正規表現が間違っているので、re.compilerが通せない。ナノで、正規表現を確認する

bound method

class Hoge:
... def __init__(self, val):
... self.val = val
... def get_val(self):
... return self.val
...

obj = Hoge(8)

obj.get_val()
8

上記エラーが出る場合は

obj.get_val
こんな風に書いているかもしれない。要チェック

AttributeError?: 'unicode' object has no attribute '_meta'

django.db.models.fields.FieldDoesNotExist?: Test has no field named u'\u30ab\u30fc\u30c9'

class TestItem(models.Model):

     テストセット     
    group = models.IntegerField?(u'グループID')   
    card = models.ForeignKey?(Test, u'テスト', blank=True, null=True)
    class Meta: 
   verbose_name = u'テストセット'   
   verbose_name_plural = verbose_name
こんな感じで書いたったので、エラーになった。↓class TestItem?(models.Model):
    '''
    テストセット
    '''
    group = models.IntegerField?(u'グループID')
    card = models.ForeignKey?(Test, blank=True, null=True)

    class Meta:
        verbose_name = u'テストセット'
        verbose_name_plural = verbose_name

参考URL


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-03-12 (月) 16:54:22 (197d)