Ruby on Rails で数年前に行ったことを達成しようとしています。
現在、CodeIgniter 3.0.0 を使用しています。
私が達成したいことの概要の下に:
テーブル:
表: ユーザー 表: 記事 _________________ _____________________________________________________ | | ID | 名前 | | | ID | 説明 | バイヤー | 申請者 | | | 1 | ジョン D. | | | 1 | PC マウス | 1 | 2 | | | 2 | アニタ F. |
私はこれを達成したい: (または同様のもの)
配列 ( [0] => stdClass オブジェクト ( [id] => 1 [説明] => 'PC マウス' [購入者] => stdClass オブジェクト ( [id] => 1 [名前] => 'ジョン D.' ) [申請者] => stdClass オブジェクト ( [id] => 2 [名前] => 「アニタ F.」 ) ) )
だから私は呼び出すことができます:
echo $article->description; //=> PC マウス echo $article->buyer->name; //=> ジョン D. echo $article->applicant->name; //=> アニタ F.
私は(運なしで)試しました:
$this->db->from('articles'); $this->db->join('users', 'articles.buyer = users.id'); $this->db->join('users'.'articles.applicant = users.id'); $objects = $this->db->get()->result_object(); //=> スロー: エラー 1066: 一意のテーブル/エイリアスではありません: 'users'
$this->db->from('articles'); $this->db->join('users', 'articles.buyer = users.id'); $objects = $this->db->get()->result_object(); //=> 'John D.' という値を持つ追加の列 'name' を返します。 配列 ( [0] => stdClass オブジェクト ( [id] => 1 [説明] => 'PC マウス' [バイヤー] => 1 [申請者] => 2 [名前] => 'ジョン D.' ) )
についてよく読んでいますgroup_by
が、うまくいきません。
これを理解するのを手伝ってもらえますか?
これは解決策になるのでしょうか、それとも可能でしょうか?!
サイド情報
これは、私が必要とするものの簡略化された例です。もっとたくさんの結合があります。
これは私が最終的に持つべきものです:
購入には多くの記事があります (articles.purchasesID) 記事には 1 つのステータス (statusID) があります 記事には 1 つのブランド (brandID) があります purchases には 1 人の購入者 (userID) がいます 購入には 1 人の申請者 (userID) があります 購入には 1 つのステータス (statusID) があります 購入には、delivered_to (userID) が 1 つあります 購入には 1 つのサプライヤー (suppliersID) があります 購入には 1 つの懸念があります (concernsID // 記事のステータスをエコーしたい場合: // Status には 'id' と 'name' があるので: echo $purchase->article[0]->status->name //=> '処理中' // または、製品の配送先を知りたい場合: echo $purchase->delivered_to->name //=> 'Carsten'
あなたが私を助けてくれることを願っています!