問題タブ [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.

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

python - sqlalchemy-migrate DatabaseNotControlledError 例外

によって最初に作成された既存のデータベースに新しい列を追加したいと考えていますsqlalchemy

ツールを使用してこれを実行しようとしたところsqlalchemy-migrate、次のエラーが発生しました。

docsで説明されているのとまったく同じ手順に従いました。(上記のエラーが発生している)を確認する前に、正常に機能するコマンドdb_versionを試しました。version

さらに調べる場所や私が間違っていることはありますか?

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

python - テーブル作成中のSqlchemy外部キー関係エラー

sqlalchemy を使用してテーブルを作成していますが、これらのテーブルの一部には複数の外部キー関係があります。コードは次のとおりです。エラーが発生します:

sqlalchemy.exc.NoForeignKeysError:「プロジェクト」と「ジャンル」の間の外部キー関係が見つかりません

スクリプトを実行しようとすると。

sqlalchemy でテーブルがどのように作成されるか、複数のリレーションを持つテーブルがある場合の作成順序を誰かに説明してもらえますか。

エラー

「sqlalchemy.exc.NoForeignKeysError: 結合条件を判断できませんでした > リレーションシップ Project.genre_id の親/子テーブル間 - これらのテーブルをリンクする外部キーがありません。参照列が ForeignKey または ForeignKeyConstraint に関連付けられていることを確認するか、'primaryjoin を指定してください。 ' 表現。"

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

python - SQLAlchemy-Migrate で方言タイプ (HSTORE) を使用して移行スクリプトを作成する方法は?

方言データ型をサポートする移行スクリプトをどのように作成しますか?

モデルの例を次に示します。

エラーは次のとおりです。

Ps Flask-sqlalchemy も使用しています

移行スクリプト:

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

python - データベース移行時の奇妙な TypeError

データベースを数回移行した後、ローカル サーバーにこのエラーが表示されるようになりました。データベースをクリアして再作成してもエラーにはならないので、モデルの書き方に問題はないと思います。

次のエラーが表示されます。

このモデルから:

エラーが何を言っているのかわかりません。整数を定義する方法に問題があると思いますが、これまでこの問題が発生したことはありません。このエラーを修正するにはどうすればよいですか?

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

python - Flask の MySQL データベースで SQLAlchemy-Migrate を使用する方法

Flask アプリで SQLite データベースを MySQL データベースに置き換える作業を行っています。

以前は、Mega Flask チュートリアルのスクリプトを使用して、SQLAlchemy-Migrate を使用してデータベースの作成と移行を管理していました。

これらのスクリプトはそのままでは MySQL と互換性がないようで、MySQL で SQLAlchemy-Migrate を使用する方法については何も見つかりません。

MySQL を使用した開発中、モデルの変更やデータベースの移行を通常どのように処理していますか?

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

flask - SQLAlchemy-Migrate で Geometry 列を追加するための移行スクリプトを作成する方法は?

Flask mega tutorialに従っています。Geometry 列をデータベースに追加しようとするまでは、すべてうまくいきました。location と呼ばれる Post クラスにあることに注意してください。

次に、チュートリアルで指定された db_migrate.py を使用しましたが、「Geometry」という名前が定義されていないというエラーが発生しました。db_migrate.py のコードは次のとおりです。

次に、上記のコードで生成されたファイル「/versions/%03d_migration.py」に、ジオメトリがインポートされていないことがわかりました。だから私は追加しました

手動で db_update.py を実行したところ、次のエラーが発生しました。

db_upgrade.py のコードは次のとおりです。

今回は何をするかわかりません。

私の質問は: 1. "/versions/%03d_migration.py" がクラス Geometry を自動的にインポートするように、db_migrate.py に加えることができる変更はありますか? 2. 1 に関係なく、ジオメトリ列を追加してデータベースを移行する方法を教えてください。

どうもありがとう〜!

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

python - Python/SQLAlchemy の移行 - ValueError: 移行時に展開するには 3 つ以上の値が必要です

Miguel Grinberg の優れた Flask Mega-Tutorial に従い、彼のデータベース作成および移行スクリプト (ここにあります) を使用していますが、モデルの 1 つで列を変更するときに問題が発生します。

古いモデルは次のとおりです。

classes.day は文字列表現です。ただし、これを外部キー関係にして、日ごとに簡単に検索およびソートできるようにしたいので、次のコードをモデルに追加しました。

次に Classes モデルを変更し、day 列を次のように変更しました。

移行スクリプトを実行すると、モデルの生成時に次のエラーで停止します。

調べるtd.columns_differentと、リストに 1 つの項目 (文字列) しかないことがわかります'day'

データベースのフィールドのタイプを変更したために、なぜ窒息するのですか?

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

flask - Elastic Beanstalk を使用した Flask db 移行の設定

ebFlask sing (Elastic Beanstalk v3.1 のターミナル クライアント)上に構築されたサイトをセットアップしました。

サイトの新しいバージョンを展開すると、「環境の更新操作は完了しましたが、エラーが発生しました。詳細については、トラブルシューティングのドキュメントを参照してください。」というメッセージが表示されます。メッセージ。

私は.ebextensions/aws.configファイルを持っています

ignoreErrors: trueコマンドにさまざまな組み合わせを使用してみましたが、うまくいきませんでした。これを解決するため、または移行のアップグレードを回避するためのアイデアはありますか?

バージョン:

Python 3.4 を実行する 64 ビット Debian jessie v1.2.0 に Python 3.4 でデプロイされた Eerything (事前構成済み - Docker)

編集:スペルミスの修正後イベントメッセージ:

これらは Elastic Beanstalk からのログです

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

python - Alembic の最後のリビジョンから自動生成されたファイルを作成する方法

私はこのチュートリアルに従っています..最初の自動生成は完璧です..基本的に、アップグレードとダウングレードの方法で問題なく移行ファイルを作成します。

これが移行ファイルのリビジョン番号だとしましょう: 3e96cf22770b.. すべてのアップグレード ステートメントは次のようになります。

私のダウングレードステートメントは次のようになります。

ここで、models.py ファイルに簡単な変更を加えました。git では次のようになります。

問題は、実際にデルタ移行ファイルを提供する自動生成ステートメントを実行する方法がわかりません..つまり、ある列を別の列に置き換える移行ファイルが欲しいだけです..

現在のリビジョンを設定してから3e96cf22770b実行しようとしました

しかしその後、デルタだけではなく、最初の移行ファイルの複製を作成し続けます (つまり、データベース スキーマ全体を移行します)。