データベースに「choices」フィールドを追加するために sqlalchemy_utils を使用しています。そして、Flask Migrate を使用して移行を実行した後、すべての選択が 255 に変換されます。以下は簡単な例です。
# models.py
from sqlalchemy_utils.types.choice import ChoiceType
class Stuff(db.Model):
type = db.Column(ChoiceType(Stuff_types))
を実行するmanage.py migrate
と、移行ファイルは次のようになります。
# /migrations/versions/1234migrate.py
import sqlalchemy_utils
def upgrade():
sa.Column('type', sqlalchemy_utils.types.choice.ChoiceType(length=255), nullable=False),
それらを手動でlength=255
正しいタイプ(この場合はstuff_types
)に変更しましたが、うまくいきました。sqlalchemy_utils で動作するように alemic を正しくセットアップしなかったのでしょうか。または、私が気付いていないより良い解決策がある場合は?
みんなありがとう!