3

私は yii フレームワークを初めて使用します。アプリを作成したばかりで、ある条件に基づいて DB からデータをフェッチし、それをビューに表示したいと考えています。このために、コントローラーでいくつかのことを試しました。

    if(isset($_GET['sku']))
    {
              $sku=$_GET['sku'];
          $data=Products::model()->findAll("sku=$sku");
    }
    $this->render('checkout',array(
        'data'=>$data,
    ));

そして、私の見解では、データを次のように印刷しようとします:

print_r($データ);

複雑な配列を見せてくれますが、それはしたくありません。私が欲しいのは、いくつかの条件に基づいてクエリによって返されるデータを含むコントローラーから配列を取得でき、foreach を使用してビューで必要に応じてそれらを表示できることです。

したがって、db からデータをフェッチしてビューに表示するための良い方法をいくつか提案してください。

ありがとう !!

4

2 に答える 2

1

Active Record の代わりに DAO を使用してみてください

$sql = "SELECT * FROM `products` WHERE sku = ".Yii::app()->request->getParam('sku', 0);
$data = Yii::app()->db
        ->createCommand($sql)
        ->queryAll();

$this->render('checkout',array(
    'data'=>$data,
));

構成ファイルにコンポーネントが必要dbです(例:config/main.php)

http://www.yiiframework.com/doc/guide/1.1/en/database.dao

于 2013-04-28T13:23:56.510 に答える