問題タブ [django-fixtures]
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.
django - フィクスチャについて不平を言うDjangoテスト
ダンプされたデータpython manage.py dumpdata --format json --indent 4 --exclude auth.permission --exclude contenttypes > app/fixtures/app_test_data.json
python manage.py テスト アプリを実行すると、次のエラーが発生します。
何か案は?dumpdata / Djangoのテストランナーを使用して、同様の問題がたくさんありました。
django - Django フィクスチャ、大量のデータのロード
したがって、200MBのJSONファイルが2つあります。最初のものは読み込みに 1.5 時間かかり、2 番目のもの (最初のものと多対多の関係モデルを作成する) は 24 時間以上かかります (コンソールを介した更新がないため、まだ行っていた場合、またはフリーズした場合は停止したため、停止しました)。
loaddata がうまく機能していなかったので、最近データベースに保存されたものを出力しながら、データをロードする独自のスクリプトを作成しましたが、スクリプトの速度が (コンピューターと共に) 遅くなるにつれて低下することに気付きました。そのため、スクリプトを停止する必要がありました->コンピューターを再起動します->中断したデータのセクションで再開します。これは、スクリプト全体を実行するよりも高速です。すべてのデータを完全にロードするために 4 時間ごとにコンピューターを再起動するのに約 18 時間かかったので、これは面倒なプロセスでした。
大量のデータをロードするためのより良いソリューションがあるかどうか疑問に思っていますか?
編集:生のSQLをロードするオプションがあることに気付いたので、SQLをブラッシュアップする必要がありますが、それを試すことができます。
django - Django フィクスチャ。初期データの読み込みプロセスが強制終了されています
私は、2 つのレガシー データベースから 57k 以上のレコードを 1 つの Django 互換エンティティに改良およびリファクタリングする作業を行ってきました。完了したら、それをフィクスチャとしてダンプし、本番環境にロードしようとしています。
私の問題は、しばらくするとプロセスが「強制終了」されることです。私のプロセスは次のとおりです。
結果:
私の開発マシンでは、プロセスが問題なく進行していることに注意する必要があります。もう 1 つの注意点として、私の開発マシンは postgres 9.2 を実行していますが、本番環境では 9.1 を実行しています。これはそれほど大きな問題なのでしょうか?
これをデバッグするにはどうすればよいですか? 漠然と「殺された」と印刷されているので、何が悪いのかさえわかりません。South はログを保存しますか? どんな助けでも感謝します。
編集: Paulo Scardine が指摘したように、問題は JSON ファイルが重すぎることにありました。最初に XML ダンプを試してみましたが、さらに進みましたが、最終的には強制終了されました。行く方法はSQLダンプです。Postgresの場合、私にとってうまくいったのは次のとおりです。
python - Django Testcase、クラス/モジュールレベルでフィクスチャをロードできますか?
json フィクスチャを Python 2.6/Django 1.4 単体テストにロードしようとしています。DjangoのTestCaseを使用してテストレベルで実行できますが、ロードに8〜10秒かかります(2Mのjson、それほど小さくなりません)。したがって、多数のテストを実行するのは非常に遅く、テスト データベースを 1 回だけロードしたいと考えています。を追加すると、Python 2.6で可能になるように見えますunittest2
が、私はそれを機能させていません。
setupModule()を試してもうまくいきませんでした。setup 関数は確実に呼び出されていますが、フィクスチャを認識していないようです。
したがって、Django の TestCase はフィクスチャを読み取り、unittest2 の TestCase はクラス/モジュール レベルで処理を行います。この操作を組み合わせて、クラス/モジュール レベルでフィクスチャを読み取る方法はありますか? 多重継承を試みましたが、データをロードできませんでした。
更新: @ robjohncox の提案に基づいて、このコードはモジュール レベルで:
データベースを作成しているようです。しかし、Django はテストごとに別のデータベースを作成しているように見えます (これは空です)。最初のデータベースを使用するように TestCase に指示する方法がわかりません (Django と unittest2 TestCase の両方を試しました)。
django - django MPTT モデルと Fixture の適用
私はdjango MPTTモデルを使用しています。
MPTT モデルをサブクラス化しますが、JSON で提供された initial_data を使用してカスタム モデルにフィクスチャを追加しようとします。
親の TreeForeignKey はオプションです (空白 = True、null = True)。
initial_data から JSON フィクスチャを適用すると、フィールド「lft」、「rght」、「tree_id」、「level」を指定するよう求められます。
... python manage.py syncdb の実行時
これらは MPTT のフィールドです。
これを除外したり、フィクスチャ データから回避する方法はありますか?
ありがとう
django - 新しいユーザーが作成されるたびに、すべてのユーザーに同じ、そのユーザーのレコードの「スターター キット」を作成したい
APPの作成時にFixturesまたはSQLを使用することを示すDjangoのドキュメントを読みました。しかし、新しいユーザーが追加されるたびに同じフィクスチャを追加したいと考えています。これを行う簡単な方法がわかりません。私はsignals.pyがそれを行う方法かもしれないと思いますが、IDなしでFixtureが追加されたことを確認する方法がわかりません。
フィクスチャ ドキュメント: https://docs.djangoproject.com/en/dev/howto/initial-data/
たとえば、各ユーザーの開始タスクとして提案されている 5 つのタスクがあります。したがって、新しいユーザーが作成されるたびに、それらのタスクを新しいユーザー アカウントに追加する必要があります。タスクにはユーザーへの FK があります。
これを実現する方法についての提案をお待ちしています。
python - モデル定義なしでdjangoテストを実行できますか?
私の問題はそれです。これは、私が取り組む必要がある古い django プロジェクトです。
不明な理由として、プロジェクトは django モデルを使用していません。代わりに、純粋な sql によってデータベースを CRUD するクラスを定義します。プロジェクトにはテストがまったくありません。
今、私はプロジェクト(ビュー/モデル/など)の単体テストを追加したいのですが、このテストはモデル定義なしでフィクスチャを使用できるのだろうか?
これを自分の手でテストする時間はあまりありません。それで、これについて知っている人はいますか?