2013-08-04 1 views
0

저는 yii의 초보자이며 하위 폼 및 gridview 사용에 어려움이 있습니다. 내가이 테이블 간단한 회계 저널을 만들려면 :yii gridview 값 안에 하위 폼/서브 페이지를 삽입하십시오.

t_journal 
--------- 
id_journal 
dates 

t_journal_detail 
---------------- 
id 
id_journal 
journal_code 
journal_name 
desc 
debit_value 
credit_value 

난 그냥 아래와 같이 두 개의 이에 대한 gridview에, t_journal 하나, 그리고 t_journal있는 gridview 안에있는 t_journal_detail 하나를 사용하고 싶습니다 :

$this->widget('bootstrap.widgets.TbGridView', array(
    'id'    => 'jurnal-harian-grid', 
    'template'  => "<div>{pager}</div><div style='float:left;'>{summary}</div><div class='clear'>&nbsp;</div>\n{items}\n<div>{pager}</div><div style='float:left;'>{summary}</div><div class='clear'>&nbsp;</div><br/>", 
    'dataProvider' => $model->search(), 
    'columns'  => array(
     array(
      'name' => 'id_journal', 
      'header' => 'ID', 
     ), 
     array(
      'name' => 'dates', 
      'header' => 'Date', 
      'value' => 'date("d-m-Y",strtotime($data["dates"]))', 
     ), 
     array(
      'header' => 'Details', 
      'value' => $this->renderPartial('_subjurnal', array("modelDetail"=>$modelDetail), true), 
     ), 
    ), 
)); 

_subjurnal.php 내부, 나는 단어 "테스트"로 한 열 표를 삽입

<table border="0"> 
    <tr> 
     <td>Testing</td> 
    </tr> 
</table> 

은 올바른 방법이 다른 subfo를 삽입인가요 RM은 또는 서브 페이지 gridview 내부? 저널 gridview의 모든 행에 오류가있어서 :

Parse error: syntax error, unexpected '<' in D:\xampp\htdocs\cvsunrise\yii\framework\base\CComponent.php(616) : eval()'d code on line 1 

올바른 방법은 무엇입니까? 이것에 대한 도움을 많이 주시면 감사하겠습니다.

답변

0

"modelDetail"=>$modelDetail이 정의되지 않은 것으로 가정합니다. 사실은 몇 가지 수정 작업을해야합니다

  1. 열 유형 - 당신은 당신이 그것을 가져올 필요가있는 gridview에서 외부 변수를 사용하려면 'type'=>'raw'

  2. 를 사용합니다. 또한 더 기능이하기 :

'값'=> 함수 ($ 데이터 $ 행) $ modelDetail {$ this-을 사용> renderPartial ('_ subjurnal'어레이 ("modelDetail"=> $ },

또한 js 스크립트의 이중 로딩을 피하십시오.

+0

감사합니다 ineersa, 작동합니다! –

0

@ineersa 대답은 올바른 해결책입니다. 당신은 자바 스크립트 문제가있는 것인지

그 후, "inside_journal.php"볼이 줄을 알 마지막 퍼팅 시도 : 배열에서

<?php Yii::app()->getClientScript()->scriptMap=array('jquery.js'=>false, 'jquery.ui.js'=>false); ?> 

()를 두 번 충전하는 libs와 넣어.

관련 문제