問題タブ [django-syncdb]
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.
sql - PostgreSQLを使用したSQL初期データのDjangosyncdbは、「列...が存在しません」を生成します
プラットフォーム:Python 2.5、Django開発ルート、PostgreSQL 8.4、Windows VistaUltimateSP2。手順:Djangoドキュメント、リリース1.0、リンクテキスト、セクション34.2、初期SQLデータの提供。
コード:
面倒な初期データファイルが標準パスから削除されると、Django開発サーバーは正常に動作し、PostgreSQLサーバーは動作し、他のモデルのデータに関するクエリに応答します。
以前のバージョンの不良テーブルがpgAdminIIIを使用して削除された場合、コンソールコマンド「pythonmanage.pysyncdb」で次のエラーが発生します。
テーブルapplication1_aisc_customaryの作成application1.aisc_customaryモデルのカスタムSQLのインストールapplication1.aisc_customaryモデルのカスタムSQLのインストールに失敗しました:リレーション「application1_aisc_customary」の列「mtype」が存在しません行1:INSERT INTO application1_aisc_customary(MTYPE、EDI_STD_NOME .. ..
カラットはMTYPEのMを指しています。エラーにもかかわらず、 pgAdmin IIIを使用して見られるように、列(大文字)のMTYPEは存在します。Django管理者がテーブルを報告しますが、レコードがないことに注意してください。
SQLのユニコードとANSIエンコーディングを試し、editable = Falseをモデル属性から外し、モデル属性以外のすべての名前を小文字にしました。たぶん私はいくつかの準備的なSQLステートメントが欠けています。私は印象的です。啓蒙的な対応をいただければ幸いです。よろしくお願いします。
09/21/09:記録として、zalewの答えは正しいです。小文字のフィールド名が必要です。また、主キーとの明らかな競合を修正するために、1つのフィールド名id(内径)をi_dに変更する必要がありました。それに合わせてodをo_dに変更しました。問題が解決しました。
django - Djangoの./manage.pysyncdbを実行すると、管理者ユーザーが自動的に作成されます
私のプロジェクトは初期の開発段階にあります。私は頻繁にデータベースを削除manage.py syncdb
し、アプリを最初からセットアップするために実行します。
残念ながら、これは常にポップアップします。
次に、ユーザー名、有効な電子メールアドレス、およびパスワードを入力します。これは退屈です。タイピングに飽きてきtest\nx@x.com\ntest\ntest\n
ました。
この手順を自動的にスキップして、実行時にプログラムでユーザーを作成するにはどうすればよいmanage.py syncdb
ですか?
python - syncdb と import ループに関する私の混乱を明確にするのに役立つ人がいますか?
Python2.5 で syncdb を使用してデータベースを構築するのに苦労しています。この問題の一部は、forum.models のインポートにワイルドカード* を使用しているためだと思います。ループを作成しているようです。
forum.managers からマネージャーを明示的にインポートすることで修正できた別のインストールでも同じ問題がありました。
ご覧のとおり、質問モデルとタグ モデルを名前空間にロードすると、シェルにマネージャーをインポートできます。
from forum.models import * を明示的に作成しました:
from forum.models import 質問、タグ
ただし、まだsyncdbを実行できません。SQL を出力しようとすると、APP が見つかりません。
$ python2.5 manage.py sql forum
Error: ラベル forum のアプリが見つかりませんでした。INSTALLED_APPS の設定は正しいですか?
誰が私に何がうまくいかないのか教えてもらえますか?
このエラーの原因となる可能性のある Python2.5 に関するものはありますか?
django - このエラーの意味:モデルUserには2つの手動で定義されたm2m関係があります
syncdbを実行しようとすると、このエラーが発生します
。auth.user:モデルUserには、モデルFavoriteQuestionを介して手動で定義された2つのm2mリレーションがありますが、これは許可されていません。代わりに、中間モデルで追加のフィールドを使用することを検討してください。
モデルFavoriteQuestionにはモデル間の関係が1つしか表示されないため、それが何を意味するのか本当にわかりません。
これが重要かどうかはわかりませんが、models.pyファイルにもあります。
追加された質問モデルを編集する
Django 1.1.1
django - manage.pysyncbdがdjango.contribアプリを同期していません
これはおそらくどこかの設定エラーです。デスクトップで開発者サーバーとsqlite3を使用して正常に動作するdjangoアプリがあります。
サーバーとsyncdbにアップロードすると、カスタムアプリのみがデータベースに同期され、django.contribアプリは同期されません。
私のapache設定:
インストールされているアプリにそれらがあります:
同期してもエラーは発生しません。それはちょうど私のmoney.accountingアプリを通常のように沈めます。
そして、管理セクションのログインページにアクセスできるので、いくつかのdjangoファイルが見つかります。
何か案は?
ありがとう!ヘイリー
python - python.manage.pysyncdbを機能させることができません
最初のdjangoアプリを作成し、settings.pyで変数DATABASE_ENGINEとDATABASE_NAMEを初期化しましたが、python manage.py syncdbを実行すると、次のエラーが発生します。誰か助けてもらえますか?これは、2つのPythonバージョンがインストールされていることと関係がありますか?
私はdjango/python noobです、助けてください。ありがとう!!
django - django manage.py syncdbが機能していませんか?
Djangoを学習しようとして、シェルを閉じて、python manage.py syncdbを呼び出すと、この問題が発生します。何が起こったのでしょうか。
私はすでにデータベースを設定しました。django_bookmarksフォルダーにmanage.pyを設定しました。ここはどうしたの?
python - djangoで、初期化スクリプトからサブコマンド「syncdb」を呼び出すにはどうすればよいですか?
私はpythonとdjangoを初めて使用し、Django Bookをフォローしているときに、データベーステーブルを生成するコマンド「pythonmanage.pysyncdb」について学びました。開発環境では、メモリデータベースでsqliteを使用しているため、サーバーを再起動するたびに自動的に消去されます。では、この「syncdb」コマンドをスクリプト化するにはどうすればよいですか?(「settings.py」ファイル内で実行する必要がありますか?)
明確化
OPはメモリ内データベースを使用しています。このデータベースは、そのデータベースに対して定義されたDjangoモデルを操作するプロセスの開始時に初期化する必要があります。データベースが確実に初期化されるようにするための最良の方法は何ですか(プロセスの開始ごとに1回)。manage.py runserver
これは、Webサーバープロセス(WSGIやmod_pythonなど)を介して、またはWebサーバープロセスを介して、テストを実行したり、サーバーを実行したりするためのものです。
django - syncdb で Django コードを実行しない方法
Django アプリの 1 つの「models.py」にあるサーバー起動コードがいくつかあります。サーバーの起動時にそのコードを実行する必要があります。
問題は、コードが SQL クエリを発行し、実行できないことですsyncdb
(psycopg2
トランザクションが中断され、テーブルが作成されません)。
コードをミドルウェアに入れて上げるのdjango.core.exceptions.MiddlewareNotUsed
は最適ではありません.Djangoシェルでも効果が欲しいからです(また、初期化コードをミドルウェアに入れるのは正しく聞こえません.)それをする最初の要求。最初の顧客が私の Web サイトを訪れたときではなく、サーバーの起動時にコードを実行したいと考えています。
サーバーの起動シグナルは Django ではまだ実装されていないため、これはオプションではありません。
したがって、私は何とかしたいと思います:
- Django が syncdb を実行しているかどうかを確認するため、クエリは実行しません。
- または、代わりに、対応するテーブルがあることを確認し、そうでない場合も、クエリを実行しないでください
上記の 2 つのオプションのいずれも、どのドキュメントにも見つかりませんでした。それ、どうやったら出来るの?または、私がやりたいことを行うためのより良い(つまり、正気の)方法はありますか?
django - Django Syncdbは圧縮されたinitial_data.json.tgzフィクスチャを処理できますか?
パッケージのサイズを小さくする必要があるので、syncdbがピックアップするためにサポートされている形式で初期データを圧縮することは可能ですか?