問題タブ [alembic]

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.

0 投票する
4 に答える
32366 参照

python - Alembic --autogenerateは、空の移行を生成します

Alembic初めて使用しようとしていますが、ここで--autogenerate説明する機能を使用したい

私のプロジェクト構造は次のようになります

私はFlaskandSQLAlchemyとそのFlask-SQLAlchemy拡張機能を使用しています。私のモデルUserは次のようになります

ここで説明するように、私は次env.pyのように変更しました

configuration.__init__pyのように見える場所

移行を実行すると

しかし、ファイルalembic/versions/55a9d5には空upgrade()downgrade()メソッドがあります

Userどうして新しいモデルがあるのか​​理解できないのですか?助けてください

0 投票する
6 に答える
7377 参照

python - Alembic:モデル内のカスタム タイプを移行する方法は?

私のUserモデルは

sqlalchemy docsで説明されてGUIDいるカスタム型です(まったく同じ)

今私が走るとき

私は私のように取得upgrade()します

しかし、アップグレードの適用中 -> alembic upgrade head、私は見る

GUIDここで /custom タイプで動作させるにはどうすればよいですか?

0 投票する
1 に答える
1073 参照

python - Python: インメモリ db を使用してデータベース モデルをテストするにはどうすればよいですか?

私はプロジェクトを開発しており、モデル を持っているORMとしてFlask使用していますSQLAlchemy
User

  • Alembicを使用して移行スクリプトを作成します。
  • 私の選択したデータベースはPostgreSQL、モデルをテストするためのものですがSQLite、テストを高速化するために使用することを好みました
  • にいくつかのタイプがあり、この場合はPostgreSQLそうでない場合に問題が発生しましたSQLiteUUID
  • で移行を実行するとsqlite://、エラーが発生します

AttributeError: 'module' オブジェクトに属性 'GUID' がありません

質問- SQLite でスキーマを保持し、メモリ内テストを実行するには
どうすればよいですか? GUIDそのようなものSQLiteはないようです
- データベースがPostgreSQL

0 投票する
2 に答える
2479 参照

alembic - alembic/env.py target_metadata = メタデータ "モジュール名 al_test.models がありません"

alembic を使用してプロジェクトのデータベースのバージョンを制御する場合、env.py のコードの一部は次のようになります。

「alembic Revision --autogenerate -m "Added user table"」を実行すると、次のエラーが表示されます: File "alembic/env.py", line 18, in from from al_test.models import metadata ImportError: No module named al_test.models

では、どのように質問を解決するのですか?ありがとう!

0 投票する
3 に答える
4112 参照

postgresql - after_create でカスタム DDL を発行するように alembic を取得するにはどうすればよいですか?

テーブルの作成後に実行したいカスタム DDL ステートメントがいくつかあります。

そして、私はそれらを次のように添付しました:

するとcreate_all、期待どおりの SQL が得られます。

しかし、Alembic を使用してアップグレードすると、ステートメントは表示されません。

「after_create」イベントをトリガーするalembicを取得する方法はありますか?

0 投票する
1 に答える
381 参照

python - Alembic は変更を検出しますが、 --autogenerate で空の移行を生成します

フラグを使用して、alembic が動作する自動生成の移行を取得しようとしてい--autogenerateます。

実行するalembic -n mydbname --autogenerate -m "my message"と、次のようなものが得られます。

しかし、生成された移行ファイルを見るupgradeと、downgradeどちらも単にpass.

どうしたの?!

0 投票する
2 に答える
9252 参照

python - Alembic は列の変更を自動生成できますか?

alembic --autogenerate列を追加/削除するときに使用できまし た。

ただし、たとえば「url」列を200文字から2000文字に変更したい場合、変更が検出されません。

Alembic を (SQLAlchemy を使用して) 作成し、変更を検出して、モデルのさまざまな列の「サイズ」に対するスクリプトを自動生成し、PostgreSQL 用の「alter_column」コマンドを作成するにはどうすればよいですか??

編集:

alembic が自動的に追加しないのはなぜですか: