問題タブ [sqlalchemy-migrate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - データベースの移行 sqlaclhemy が attributeError を返す
sqlalchemy ベースのデータベースを使用してフラスコ アプリケーションを構築しました。私は以下の移行スクリプトを使用します: メガ チュートリアルへのリンク しかし、このスクリプトを実行すると、attributeError が発生します。ここにエラーからのスクリーンショットがあります:画像へのリンク
flask - sqlalchemy postgresql enum は db migrate で型を作成しません
Python3 で Flask を使用して Web アプリを開発しています。データベースの移行/アップグレードで postgresql 列挙型に問題があります。
モデルに列「ステータス」を追加しました:
生成された移行python manage.py db migrate
は次のとおりです。
そして、私がそうpython manage.py db upgrade
すると、エラーが発生します:
移行でタイプ「banner_status」が作成されないのはなぜですか?
私は何を間違っていますか?
python - sqlalchemy エラー: db model.py から列を削除した後、object() はパラメーター エラーを受け取りません
typeerror: object() takes no parameters
mysql コマンドで意味をなさない次のエラーが表示されます。エラーは、不要になった models.py からユーザー名列を削除したことが原因です。
以下は、models.py ファイルのユーザー モデル定義です。ユーザー名の列を削除し、モデルから削除すると上記のエラーが発生するようにしたいと考えています。
以下は、db の更新に使用した db_migrate.py ファイルです。これは Miguel のデータベース チュートリアルから入手しました
これは 005_migration.py ファイルです
flask - Alembigigrationで各行に一意の値を設定する方法
モデルに一意の属性を追加しましたuid
:MyModel
移行があります:
実行db upgrade
時にエラーが発生しました:
op.execute(mymodel.update().values(uid=generate_uid())) で各行に一意の値を設定する方法は?
python - ORM で新しい列を追加するときに models.py を更新するにはどうすればよいですか?
私はPythonとORMにかなり慣れていないので、かなり具体的な質問があります。SQL を処理するには、Python ORM でモデルを定義する必要があります。おそらく、models.py
.
テーブルにコンテンツを追加するときに新しい列を自動的に作成したい場合、models.py
毎回手動で更新しないようにするにはどうすればよいですか?
いくつかのコンテキストを提供するために:私はテーブルを持つデータベースを持っていますPersons
、Publications
およびArticles
。Persons
ID を新しい列として取得し、その行にPublications
Person が書き込んでいるすべての IDを入力するテーブルを作成したいと思います(関連する を介してArticles
)。
この質問では、Damian Brechtがsqlalchemy-migrateを指していますが、モデルの定義を更新し続ける方法がわかりませんmodels.py
。
python - sqlalchemy-migration が db.func.current_timestamp() の間違ったスクリプトを生成する
現在のプロジェクトでは、postgresql9.4+flask+sqlalchemy を使用しています。データベースの移行を行うために、sqlalchemy-migrateを使用することにしました。しかし、このツールがフィールドのデフォルト値を正しく表現しないという問題に遭遇しました。質問を簡単にするために、問題を分離しました。私のプロジェクトは次のようになります。
./app/__init__.py
./config.py
./db_create.py
./db_migrate.py
ここまでは問題ありません。db_create.py と db_migrate.py を実行すると、ベース テーブルと適切な列を含む初期データベースが作成されます。ベースモデルに「modified_at」フィールドを追加すると、問題が発生します。
次に、./db_migrate.py を実行すると、次のようなエラーが発生します。
実際、./db_repository/versions/002_migration.py にアクセスすると、間違ったコードが見つかります。
なぜそれが起こるのか、そして私に何ができるのかを誰かが知っているなら、教えてください. 私が使う
- フラスコ==0.11.1
- Flask-SQLAlchemy==2.1
- psycopg2==2.6.2
- SQLAlchemy==1.1.2
- sqlalchemy-migrate==0.10.0