問題タブ [yii-relations]
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.
forms - Yii で 2 つのテーブルを 1 つのフォームに接続する方法
私は最近 Yii フレームワークを導入され、現在、会社の Web アプリケーション システムを開発しています。ただし、それぞれのテーブルに接続するためにモデルを作成するときに、一度に 1 つのリレーションしか選択できないことに気付きました。ただし、同じデータベースの 2 つの別個のテーブルを 1 つのフォームで接続する必要があります。
これをどのように達成できるかについてのアイデアはありますか?
activerecord - モデルの特定の関係を構築する YII アクティブレコード
CGridView を使用して車両モデルを表示しようとしています。
Fld7465RRef 参照列の値を表示するには、次の sql select が必要です。
このクエリの関係を構築するための解決策が見つかりません。
caching - Yii 関係により、アイテムが存在しない (キャッシュの問題?)
私は関係を設定しました:'teamDrivers' => array(self::HAS_MANY, 'TeamDriver', 'team_id')
私のチームモデルで
だから私が望むなら、私はできる:print_r($this->teamDrivers);
私のチームで。デモンストレーション用です。
ここでの問題は、この種のコードがデータベースから既に削除された項目のリストを作成することです! それらのアイテムを介しCActiveDataProvider
て到達していません。CDbCriteria
アプリからログアウトしてから再度ログインすると、すべてが機能しているようです。
では、これらの関係を処理するキャッシュがあるのでしょうか、それともこの謎は何なのでしょうか? そして、そのキャッシュをクリアするにはどうすればよいですか?
join - Yiiの関係の条件を変更する
私は少し問題に直面しています、そして私はあなたの助けが必要です。2つのテーブルを結合したいのですが、外部キーだけでなく、他の結合条件があります。条件パラメーターを設定しようとしましたが、クエリにWHEREが作成され、結合されたテーブルではなく、プライマリテーブルがフィルター処理されます。
これが条件になります->
php - モデルに条件付き関係を持たせるにはどうすればよいですか?
アプリケーションには 2 種類のプロファイルがあり、それらは 2 つの異なるテーブルです。たとえば、個人プロファイルは「person」テーブルにあり、ID は「p」で始まります。ビジネス プロファイルは「business」テーブルにあり、ID は「b」で始まります。
投稿とプロフィールの間の関係を作成する「いいね」テーブルがあります。ただし、プロファイルは条件付きの関係です。profile_id が 'b' で始まる場合はビジネス モデルである必要があり、そうでない場合は 'Person' モデルである必要があります。
モデルのrelation()メソッドにif文を入れてみました。ただし、その段階ではプロパティが初期化されておらず、エラーが発生します。afterFind() と afterConstruct() を使用して、モデルのメタデータへの関係を追加しようとしました (CActiveRecordMetaData::addRelation() を使用)。afterFind または afterConstruct のいずれかでリレーションシップのタイプをエコーすると、それらはすべて本来あるべきものになります。しかし、何らかの理由で、いくつかの結果をループしてリレーションにアクセスしようとすると、それらはすべてビジネスとして識別されます。リレーションを追加した直後に CActiveRecord::refresh() を呼び出すと、100 個のネストされた関数呼び出しの制限に達したというエラーが表示されます。
この条件付き関係を実装するにはどうすればよいですか?
yii - Yii でモデルを自分自身と結合すると非オブジェクト エラーが発生する
これらのフィールドを持つモデルがあります:
このテーブルに階層構造を格納します。
somw の例のレコードは次のとおりです。
管理(管理)ページのグリッドビューで、IDの代わりに親の名前を表示したい。だから私はモデル(もの)でこの関係を定義します。
とビューで:
しかし、管理ページで「オブジェクト以外のプロパティを取得しようとしています」というエラーが表示されます。これは、parent_id が '0' で id=0 のレコードがないルート特許が原因のようです。
どうすればこの問題に対処できますか?
よろしくお願いします。
php - リレーションを構築して Cgridview で 4 つのテーブルの列を表示する方法
3 つ以上のテーブル間の関係を構築する必要があるという要件があります。Message、Flat、Person、Mapping テーブルの 4 つのテーブルがあります。現在、以下のテーブルには次のフィールドがあります。
メッセージ:
マッピング
平らな
人
ここで、Message の Cgridview(admin.php) で、フラット テーブルの PersonId と Person テーブルの Name と Phone を Message テーブルの列とともに表示するように関係を構築する必要があります。
メッセージのモデルクラス(message.php)でこのような関係を定義しました
person テーブルの列をメッセージ グリッドビューに表示するための手順を順を追って説明してもらえますか。