2012-02-01 4 views
2

제품에 대해 여러 리뷰가 표시되는보기가 있습니다. 각 리뷰는 처음에 제목, 리뷰 컨텐츠 및 등급 평가를 통해 제출되었습니다. 이 모든 데이터가 성공적으로 저장됩니다.1로보기에서 Yii의 다중 CStarRating 표시

제품에 대한 설명 내가이 제품에 대한 리뷰 (동일한 정보 - 리뷰 제목, 리뷰 내용 및 리뷰 평점)를 표시 중입니다.

내가 겪고있는 문제는 등급의 수치를 표시 할 수 있지만 각 리뷰에 대해 CStarRating을 통해 렌더링 된 값을 표시하려고 할 때 하나의 CStarRating이 올바르게 렌더링됩니다 (첫 번째). 다른 사람들은 자신의 데이터가 누락되었습니다.

내 foreach 루프의 코드는 다음과 같습니다

<div class="rating"> 
      Rating: <?php echo $review->rating;?> 
      <?php $this->Widget('CStarRating',array(
        'id'=> 'rating'.$review->id, 
        'name'=>'test'.$review->id, 
        'attribute'=>'rating', 
        'value'=> $review->rating, 
        'readOnly'=>true, 
        'minRating'=>.5, 
        'maxRating'=>5, 
        'starCount'=>5, 
        'ratingStepSize'=>.5, 
      ));?> 
    </div> 

여러 등급의 값을 표시하는 적절한 구문은 무엇입니까?

p.s. 나는 높고 낮은 것을 검색했으며, 데이터를 표시하는 것에 관한 어떠한 문서/질문도 발견하지 못한 것에 놀랐습니다. 오직 데이터를 삽입하는 것뿐이었습니다.

+0

아직까지 아무런 행운이 없었습니다 ... 한 페이지에 여러 리뷰가있는 경우 동작이 이상하게 작동합니다. 첫 번째 리뷰의 데이터가 올바르게 채워질 수 있습니다. 그럼 거기에 몇 가지 빈 cstarrating 컨트롤이있을 수 있습니다 그리고 무작위로 줄에 10 라디오 상자가있을 것입니다 ... CStarRating 정말 정말 입력 및 출력되지 않습니다? – w00tw00t111

답변

0

문제는 등급의 데이터 유형입니다. 정수인지 부동인지 (double인지) 확인해야합니다. 이로 인해 평가 위젯이 잘못된 형식의 잘못된 형식으로 데이터를 수신하고 있으며이를 렌더링하는 방법을 알지 못했습니다. 데이터 유형이 데이터베이스에서 수정되면 잘 작동합니다.

0

나는 완전한 대답을 가지고 있지 않지만, 이것은 생성 된 자바 스크립트와 관련이있을 것입니다. 생성 된 HTML/JS를 확인하십시오. 맨 아래에 구성 요소에 대한 JS 코드가 있습니다. 그것이 올바른 방향으로 당신을 가리킬 수 있는지보십시오.