問題タブ [tablegateway]

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 に答える
123 参照

php - Zend tableGateway を使用して、あるテーブルで INSERT を実行し、別のテーブルで UPDATE を実行する

注文と呼ばれるモジュールがあり、それが追加されると、別のモジュール (別のモジュールのテーブル) の値を更新する必要があり、注文にはそのテーブルに他のモジュールの id が含まれているとします。Zend の TableGateway でこれを行う予定ですが、他のテーブルを変更する方法がわかりません。

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

php - 同じコントローラ ファイルから 2 つの異なるテーブルにアクセスする

Zend Framework 2 マニュアルのアルバム テーブル チュートリアルを正常に完了しました。テーブルゲートウェイを使用して実装しました。彼が「album」という名前のテーブルを 1 つしか使用していないことがわかります。したがって、彼はその 1 つのテーブルに従って実装しました。

その「アルバム」テーブルからの各アーティストの情報を保持する「アーティスト」という別のテーブルがあるとしましょう。

今マニュアルでは、彼は単に使用します:

今、「アーティスト」テーブルで同様のことをしたいので、クエリは次のようになります。

では、何を変更または追加する必要がありますか?? 名前、生年月日、国などの列を含むアーティスト テーブルを mySql に既に作成しています。

PS: 結合などの atm を使用するつもりはありません。同じコントローラー(同じモジュール)の2番目のテーブルにアクセスしたいだけです。

解決策: Venca の助けを借りて、この問題を解決することができました。2 つのテーブルなどの工場設定を編集する方法は次のとおりです。

これで、コントローラーから両方のテーブルにアクセスできます。問題が解決しました。よく過ごした日。

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

php - Zend Framwork 2 - Tablegateway - DB の行の 1 列のみを更新する

users というテーブルがあります。次の列があります。

ID

名前

ユーザー名

Eメール

ユーザーは、ユーザー名列を除いて、このテーブルのデータを編集できません。問題は、ユーザーが自分のユーザー名を編集したい場合、ZF2 Tablegateway でのクエリは何になるかということです。

ZF2 マニュアルでも作成されているように、コントローラーには getUserTable() という関数があります。だから私は次のようなことをしています:

また、Model フォルダーにある UserTable.php クラスには、updateUser($id, $name) という関数があります。

現時点で私の関数は次のようになります。

したがって、基本的に実装したいのは次のとおりです。

ユーザーの更新セット 'username' = $username where 'id' = $user_id

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

zend-framework2 - Zend Framework 2 の tableGateway を使用して、FROM 句でサブクエリの結合を含むやや複雑なクエリを生成します。

Zend Framework 2 tableGateway を使用して次のクエリを生成しようとしています。

以下は私がこれまでに得たものです

サブクエリとの左結合を機能させるだけです。from メソッドと join メソッドのどの組み合わせを組み合わせる必要があるのか​​ わかりません。私は今3時間苦労していますが、助けを求めています. どんな助けでも大歓迎です

@peterpeterson からの提案に基づいて、これは私が試した新しいクエリです

実行して実行すると、次のエラーが表示されます。

このオブジェクトは、コンストラクターでテーブルやスキーマを使用して作成されたため、読み取り専用です。

たぶん、私はまだクエリを正しく形成していません。テーブルゲートウェイを使用しています。tableGateway 経由でこの種のクエリを実行することはできないのでしょうか?

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

php - Zend 2 : 別のモデルで定義されたメソッドを現在のモデルで使用するには?

この問題をさまざまな方法で解決しようとしていますが、何も機能していないようです。私は2つのモデルを持っています:

そして私の現在のモデル:

モデルでは、モデルAttachmentTableのメソッドを使用する必要があります。Zend Franework 2 でそれを行うにはどうすればよいですか?getAttachmentUsersMetaTable

私の 2 つのモデルは次のように定義されていModele.phpます。

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

mysql - Zend Framework 2 tableGateway を使用した SQL クエリ

Zend Framework 2 は初めてで、現在、学校のプロジェクトのフォーラムをコーディングしています。Db Sql Select オブジェクトと tableGateway では管理できないクエリがあります。Db アダプターを使用したところ、正常に動作しますが、後でページネーターを使用する必要があるため、Db Sql Select オブジェクトを使用してクエリを渡す方法を探しています。

ここに私が持っているものがあります:

Zend\Db\Sql\Select でこのクエリを実行する方法についてのアイデアはありますか? ありがとうございました !

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

zend-framework2 - ZF2 - 式の変更による選択

2.2.7 のプロジェクトでは、次のようなコードがあります。

$select->where->expression('CXORDERNUMBER = "' . $orderNumber . '"', null);

これを 2.4.9 用に更新しようとすると、次のエラーが発生します。

*Zend\Db\Sql\Exception\RuntimeException

式の置換数がパラメーターの数と一致しません*

私はそれを次のように変更する必要がありましたが、これは私にもなじみがあります。

$select->where(array("CXORDERNUMBER" => $orderNumber));

コードにはこれらの式が多数あります。上記の方法で変更できない場合があります。ZFの新しいバージョンでなぜこれが起こるのか、誰かが私に説明できますか?

ありがとう!

アップデート:

式は次のように使用する必要があります: $select->where->expression('CXORDERNUMBER = ?', array($orderNumber));

2.4.9 には常にパラメータ セットがあり、2.2.7 のように null 値が無視されることはありません。

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

mysql - Zf2 table gateway join query to fetch only the latest row(by id) from second table

enter image description here

Hi, I need a zf2 join query that fetches only the latest row(by id DESC) from the second table. I have written an sql query and it works.

But I need this query at zend framework 2 table gateway format. Please help.