問題タブ [dbix-class]
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.
perl - DBIx::Class::InflateColumn::DateTime オブジェクトから sprintf で初期化されていない値を使用するのはなぜですか?
これは、DBIx::Class をアップグレードしてから始まったようで、何が間違っているのかわかりません。
結果ファイルの私の列定義は、
中断後にもう一度やり直すのは、Schema::Loader が生成されたコードを変更する際に問題が発生するのを防ぐためです。
初期化されていない値に関する警告を防ぐにはどうすればよいですか? これは DBIx::Class のバージョン 0.08124 を使用しています (以前のバージョンでも発生したと思いますが、この問題を調査することはできませんでした)。
perl - DBIx :: Class::ResultSetの問題
私は次のコードを持っています:
しかし、私がそれをこのように使おうとすると:
私は常にゼロの結果を得ます、誰かが私が間違っていることを言うことができますか?
ありがとう!
perl - DBIx ::ClassResultSetに列を動的に追加する
DBIx::Class
eBayオークションを表すオブジェクトがあります。基になるテーブルには、多くのデータを含む説明列があります。説明列はほとんど使用されないため、DBIx::Class
そのテーブルの列リストには含まれていません。このように、ほとんどのクエリはオークションの説明データをフェッチしません。
ただし、この列を必要とするスクリプトが1つあります。この1つのケースでは、他の列と同じように、説明列の内容にアクセスします。
他のすべてのクエリに説明列をフェッチさせることなく、これを実現するにはどうすればよいですか?
perl - Catalyst の DBIx::Class::Schema モデルの Moose メソッド修飾子
任意の結果クラス MySchema::Result::Foo (Moose/MooseX::nonmoose を使用するデフォルトのスキーマ ローダー生成構文から構築)
BUILDARGS メソッド ラッパーを追加して、行のコンストラクター データを次のようにサニタイズすると、次のようになります。
スキーマを直接使用する場合に機能します。たとえば、次は期待どおりに動作します: ->new が呼び出される前に、real_column=>'value' と not_a_real_column が削除された新しい行オブジェクトが作成されます。
ただし、Catalyst::Model::DBIC::Schema を介して同じスキーマを使用する場合、順序は異なります。not_a_real_column が無効であるため、新しい Foo 行オブジェクトを作成しようとすると、次のように失敗します。つまり、new への引数は、->new が呼び出される前に BUILDARGS を介して実行されません。
興味深いことに、'BUILDARGS' => sub{} の代わりに 'new' => sub{} をラップすると、動作はどちらの場合も同じで、正常に動作しますが、Moose のドグマでは決して混乱しないように述べられています。新着。
なぜこれが当てはまるのか、またはより良い方法があるかどうかを理解するのを手伝ってくれる人はいますか?
sql - DBIx::ClassでGROUPの前に注文する方法
次のような単純な時間テーブルがあります。
DBIx::Classを使用しています。私の「アイテム」の結果は次のように定義されます。
つまり、私にできることは次のとおりです。
どちらでも構いません。次に、私は行うことができます:
このような結果セットを取得するには:
私の質問:フレッドとジャックの単一の最新の承認ステータスのセットを取得するにはどうすればよいですか?つまり、この結果セットを取得したいのです。
私はこのようなことを試みました:
ただし、「ORDERBY」は「GROUPBY」の後に実行されるため、代わりに次のようになります。
ヘルプ?
perl - TemplateToolkit内の結果セットから追加で選択された列にアクセスする
テンプレート(test.tt)の内部:
テンプレートに渡された結果セットで追加で選択されたアイテムにアクセスする方法がわかりません。
database - DBIx::Class を使用して SQLite データベースにインデックスを作成する
DBIx::Class テーブルにはインデックスが必要だと思い始めています。複数の結合に対してコストのかかるクエリがいくつかあり、それらを少し最適化できるかどうかを確認したいと考えています。DBIx::Class 内のテーブルにインデックスを作成して維持する方法はありますか?
sql - SQL::Translator::Table の add_index 関数を呼び出すときに、インデックス値の順序を指定するにはどうすればよいですか?
DBIx::Class を使用してテーブルとそのインデックスを作成し、SQL::Translator::Table add_index()を呼び出していますが、次のように、いくつかの列で値の順序を指定できるようにしたいと考えています。
add_table() に 'ASC' および 'DESC' 修飾子を指定することは可能ですか?
そうでない場合、この SQL は非効率的であると思われます。
この場合、データベースのオーバーヘッドを削減するための回避策はありますか? (MySql 5.xを使用しています
perl - Test :: DBIx :: Classを使用してテストスイートのフィクスチャを正しくロードするにはどうすればよいですか?
DBIx :: Classスキーマのテストがたくさんあり、Test :: DBIx::Classを使用しています。これは、便利なテスト機能とロードフィクスチャを提供するので素晴らしいです。また、Test :: mysqldトレイトがあるため、テストmysqldインスタンスを動的に作成し、スキーマをデプロイし、フィクスチャをロードして、テストすることができます。しかし、テストスクリプトがたくさんある場合、コンストラクターを介してインスタンス化するときに、サーバーを起動し、各スクリプトの開始時にフィクスチャをデプロイしてロードするのはばかげているようです。
テストデータベースを作成し、テスト中にデータを入力するための最良の方法は何ですか?