0

次のように、選択フィールドを持つ CharField タイプがあります。

class Thing(models.Model):
    def __unicode__(self):
        return self.name

    A = 'a'
    B = 'b'
    C = 'c'

    TYPE_CHOICES = (
        (A, 'a'),
        (B, 'b'),
        (C, 'c'),
    )
        ...
    type = models.CharField(max_length = 1, choices=TYPE_CHOICES)
        ...

ページ add/thing にアクセスしようとすると、 /path/to/thing/add/ column "type" of relationship "place_thing" does not exist で DatabaseError が発生します

データベース (postgres) を確認したところ、エラーに示されているように、型が列ではないことがわかりました。

データベースを同期または移行するときにタイプ フィールドが追加されないのはなぜですか?

データベース (postgres) に列「TYPE_CHOICES」と「type」を作成するにはどうすればよいですか?

クラスThingのデータベースによって何が作成されるのか、誰か説明してもらえますか?

ありがとうございました

ケイティ

4

1 に答える 1

0

結局使ってしまった

ALTER TABLE table_name ADD COLUMN type varchar(30);

そしてこれはうまくいった

TYPE_CHOICES 列は既に作成されていると思います

ありがとう

于 2012-09-11T02:03:12.800 に答える