2013-07-25 5 views
0

사람들이 도와줍니다. 나는 처음 온거야. 이렇게 각 항목을 재고 표시하고 싶습니다.YII 재고 관리 시스템 문제

enter image description here

enter image description here

이 작업을 수행하는 가장 좋은 방법은 무엇입니까 실제 데이터베이스?

+0

다음은 http://www.yiiframework.com/doc/guide/1.1/en/quickstart.first-app – jmarkmurphy

+0

이 내용을 읽었지만 내 문제는 다릅니다 –

+0

Mohit I'dont는 do it ...이 값을 배열에 저장하거나 다른 방법으로 저장해야합니까? –

답변

2

당신이 찾고있는 것은 크로스 탭 또는 피벗 테이블입니다. 여기에 링크가 있습니다 : http://www.artfulsoftware.com/infotree/qrytip.php?id=523

+0

예 이것이 내가 원하는 것입니다. 그러나 yii 활성 레코드에서 수행하는 방법 –

+1

활성 레코드는 오브젝트에 액세스하고 수정하는 편리한 방법이지만 모든 것을 수행 할 수는 없습니다. 아마도 [DAO 사용] (http://www.yiiframework.com/doc/guide/1.1/en/database.dao)? –

+0

자신 만의 SQL을 작성해야합니다. 그리드에 결과를 표시하려면 CSqlDataProvider를 사용해야합니다. http://www.yiiframework.com/doc/api/1.1/CSqlDataProvider – jmarkmurphy

0

나는 똑같은 것을 찾고 있었고 CSqlDataProvider를 사용하여 해결책을 가졌습니다. CSqlDataProvider를 사용할 때 객체를 반환하는 CActiveDataProvider와는 달리 배열을 반환한다는 점에 유의해야합니다. 여기

는 veiw의 코드 모델 코드 여기

public function displayStock($id) 
{ 
    $sql='SELECT product_id, COUNT(*) as productCount FROM stock WHERE assigned_to = 2 GROUP BY product_id'; 
    $dataProvider=new CSqlDataProvider($sql, array(


     'pagination'=>array(
      'pageSize'=>10, 
     ), 
    )); 
    return $dataProvider; 
} 

입니다

$stockDataProvider = Stock::model()->displayStock(Yii::app()->user->id); 
$this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'stock-grid', 
    'ajaxUpdate' => true, 
    'template'=>'{items}{summary}{pager}', 
    'dataProvider'=>$stockDataProvider, 
    'columns'=>array(

     'product_id', 
     array(
       'name'=>'test', 
       'value'=>'$data["productCount"]' 
      ), 


     array(
      'class' => 'CButtonColumn', 
      'template' => '{view} {update}', 

     ), 

    ), 
)); 

모델의 SQL 문을 정의 할 때, 당신은 우리가 COUNT를 설정 한 볼 수 있습니다 (*) productCount라고합니다. 그런 다음보기에서 열 배열의 해당 이름을 참조하십시오.

array(
       'name'=>'test', 
       'value'=>'$data["productCount"]' 
      ), 

따라서 단순히 사용한 이름으로 productCount를 대체하십시오.

나는 위의 코드가 쿼리 등에서 Binded params를 사용하여 약간 조정할 수 있다고 확신하지만 이것은 나에게 효과적이다.

모든 댓글이나 개선을 환영합니다. 나는 약 8 개월 PHP와 yii에 3 개월입니다.