問題タブ [django-database]
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 - Django テスト: 一時データベース ファイルにデータがありません
で次のように設定された sqlite3 データベースを使用していますsettings.py
。
以下で開始されたテスト実行中:
path/to/test-config.sqlite
これにより、必要なフィクスチャをロードした別のアプリケーションで必要なデータベース ファイルが一時的に作成されます。
ただし、データベースファイルは空です。これは、あるテストで一時停止中にアサートしました。
sqlite ファイルを必要とせず、メモリ内データベースで十分なその他のテスト ケースでは、エラーは発生しません。
私の質問:
- とにかくそれを作成する場合、なぜdjangoはそのデータをデータベースファイルにフラッシュしないのですか? と
- データを一時データベースファイルにダンプする必要があるため、djangoにそれを実行させるにはどうすればよいですか?
編集
興味があれば、私はDjango 1.3.1を使用しています。
EDIT2
私はフィクスチャに精通しており、それらを使用してデータベースにデータを入力していますが、私の問題は、テスト中にフィクスチャからのデータがデータベース ファイルに書き込まれないことです。その事実について十分に明確でなかったら申し訳ありません。
EDIT3
私の質問には明確な説明が必要なので、次のテスト設定を検討してください(これは私が実際に行っていることに近いものです):
メソッドがtestSomething
ブレークポイントに達すると、プログラムを起動し、sqlite3
Django によって作成された一時データベース ファイルに接続します。フィクスチャはロードされます (他のテストも同様に機能するため、私は知っています) が、データは一時データベース ファイルに書き込まれません。
python - 書き込みクエリにのみ特定のデータベースを使用するように Django を構成する
Django http://map.ninux.org/で構築したこのオープン ソース アプリがあります。これはワイヤレス コミュニティ ネットワークで使用され、ニュリンベルクの Hetzner とのネットワーク外でホストされています。
内部使用のみを目的として、ネットワーク内にミラーを配置したいと考えています。
ネットワークの外部でホストされているデータベースに対して書き込みクエリを実行するようにミラーを設定したいと考えています。ローカル DB とネットワーク外の DB の両方で書き込みクエリを実行するようにミラーを設定することをお勧めします。
なにか提案を?
また、Django を使用した分散/冗長/分散型アプリケーションの開発に関する記事があるかどうかも気になります。
ありがとう!
python - @commit_manuallyにネストされた@commit_on_success
いくつかのスクリプトで次のユーティリティ関数を使用しています。
スクリプトの1つで、これらのモデルインスタンスの多くをデータベースにアップロードします。これを効率的にするために、私は次のことを試みます。
commit_manually
オーバーライドしますcommit_on_success
か?
そうでない場合、どうすればそれを作ることができますか?
django - django - dbをsqlite3からpostgresに変換するときのloaddataエラー
sqlite3 db から Postgres に変換しようとしています (django 1.4 でタイムゾーン対応の日時フィールドを使用できるようにするため)。sqlite3 db からデータをダンプしました。次に、空のpostgres dbを指すように設定を切り替えました。次にsyncdbを実行し、次に南への移行を実行しました。これまでのところすべて順調です。
ダンプしたデータを postgres にリロードしようとすると、次のエラーが発生します。
データの読み込み中に例外が発生しました: 重複するキー値が一意の制約 "django_content_type_app_label_model_key" に違反しています 詳細: キー (app_label, model)=(django_twilio, caller) は既に存在します。
アプリから twilio を削除しましたが、データベース内の次のオブジェクトだけで同様のエラーが発生しました。
どんな助けでも大歓迎です。私はプログラミングとdjangoが初めてです。ありがとう!
python - ユーザー情報の保存Django
Webサイトのユーザーにとって、データベースを使用してDjangoに情報を保存するための最良の方法は何ですか。私が取り組んでいるWebサイトには、次のセクションがあります。
- ユーザーがコメントを投稿できる一種のチャットルーム。
- 他のユーザーに公開されている一連のドキュメント。
- 各ドキュメントのレビュー
問題は、ドキュメントをどこに保存する必要があるかということです。(一人一人がいくつになるかわかりません)。ドキュメントごとに、レビューをどこに保存する必要がありますか?(レビューがいくつあるかわかりません)。
私はDjangoを初めて使用し、購入した本を始めたばかりですが、8月までに計画を立てる必要があります(これほど新しい人でも可能ですか?)。
django - バグ #10467 に関連する django1.4 および postgresql 8.1 の RETURN postgresql ステートメントを避ける
数日前、レガシー システムから新しいシステムに移行されたデバッグ データの CRUD を作成する目的で、管理者機能を使用して django1.4 でプロジェクトを作成しました (移行は完全には成功しませんでした)。django を使用して作成します。 1.4 で、ラップトップに実稼働データベースのコピーがありますが、私の Linux では postgresql9.1 を使用しているため、元のサーバー (postgresql8.1) でプロジェクトをテスト データベースに構成しようとすると、エラーが発生しましたsyncdb
。migrate
ステートメント:
そこで、少し調べてみたところ、django でチケット#10467 (現在クローズされている) を見つけました。これは、ステートメント RETURNING を使用すると postgresql 8.1 でエラーが発生することを示しています。これは、8.2 までその構文をサポートしていないためです (と思います)。 、バグは 8 か月前にクローズされたように見えますが、ある時点で再導入されたと思います。チケットのスレッドでは、問題は自動コミットの動作に関連している可能性があると述べており、connection.features.can_return_id_from_insert
.
質問は次のとおりです。
再度開く必要があるのはバグですか?connection.features.can_return_id_from_insert
自動コミットの動作を無効にしてリスクを想定する必要があります (そうはなりません) False
。
database-design - 遺伝的変異のリレーショナルデータベース
私は自分の機関のデータベースで遺伝的変異データを表現しようとしています。参照対立遺伝子、変異対立遺伝子、染色体、位置、名前、考えられる効果、遺伝子、遺伝子内の位置などに関連する遺伝的変異を発見しました。
質問のコンテキストが役立つ場合もありますが、これはdjangoで構築し、dbバックエンドはPostgreSQLまたはMySQLのいずれかになります(質問の主な焦点ではありませんが、ここでの選択に関する提案も歓迎します)
この情報を適切に表現するために、私はリレーショナルデータベースの設計に着手しました。しかし、最も効率的な構造を定義する際に問題が発生しています。私はそれを次のように表すことができます:
バリアントは、多対1の関係で遺伝子に属します。つまり、1つの遺伝子に多くのバリアントを含めることができますが、通常、1つのバリアントが複数の遺伝子にまたがることはできません。(ただし、これは大きなCNVで発生する場合や、2つの遺伝子が重複する場合に発生する可能性があるため、多対多の関係になる可能性があります???)
変異体は個人でも発見されています。個体には遺伝子型があり、これは変異体の対立遺伝子のさまざまな組み合わせの2つのコピーにすぎません。これに最適かどうかはまったくわかりません。おそらく、バリアントと個体の共同主キーであり、遺伝子型を変異対立遺伝子の数として記録します(たとえば、0、1、2)???
だから私の質問は(すべての前文とバイオトークで申し訳ありませんが)私たちがどのように最善であるか、またはこれらの3つのもののためのより良いデザインです:バリアント-私が情報を保存したい主なもの、そして遺伝子、そして個人-どちらもダウンストリーム分析に不可欠です。
どんなアドバイスも大歓迎です。質問のやや短命な性質についても申し訳ありません。
django-database - django.db.utils.IntegrityError:(1062、"キー'content_type_id'のエントリ'22-add_'が重複しています")
私はdjangoの複数のDBルーターの概念を使用しており、異なるデータベースを持つ複数のサイトがあります。ベースデータベースユーザーは、他のすべてのサブサイトでログインします。
ベースサイトでsyncdbを試してみると(いつでも)正常に機能しましたが、他のサイトでsyncdbを試してみると、初めてしか機能しません。次回以降に試してみると、次のような統合エラーがスローされます。
- django.db.utils.IntegrityError:(1062、"キー'content_type_id'のエントリ'22-add_somesame'が重複しています")
そのプロジェクトで複数のDBルーター設定を削除すると、syncdbが(いつでも)正しく機能することを意味します。
それで、これは複数のデータベースルーターに関連していますか?または他に何?
誰かがこれについてアドバイスしてください、ありがとう。
python - DjangoDynamoDBデータベースバックエンド
DjangoサーバーのバックアップデータベースとしてAWSDynamoDBをセットアップすることは可能ですか?もしそうなら、私はこれをどのように行うのですか?
ありがとう!
django - Django modelform保存メソッド:エラー:「args」またはその近くの構文エラー
モデルフォームを保存しようとしています。Django reurnsInternalError: current transaction is aborted, commands ignored until end of transaction block
これは、 Djangoによって生成されたINSERT
sql-queryを実行する際の問題です。次のようになります。
PgAdminでこのクエリを実行しようとしました。このエラーが返されました:
何が間違っている可能性がありますか?
UPD: InternalErrorのtracbackは次のとおりです。
UPD2:
私のモデルはsaveメソッドを上書きしました:
ModelForm
データは、 (POSTからデータを取得する)を使用するビューによって処理されます。保存する前に、フォームが検証されました(form.is_valid())。