2015-01-09 2 views
0

나는yii2 정수 필드를 모델에 추가하는 방법은 무엇입니까?

https://github.com/yiisoft/yii2/issues/6797

이 필드를 대체 가능성이 이

은 내가 모델에이 기능을 추가하려고

번호를하기 위해 ID를 강제로 원하는 정수로 전송하려면 여기를 읽어

public function fields() 
{ 
$fields = parent::fields(); 
    $fields = [ 
     'ID' => 'integer', 
     'CODICE_SPEEDY', 
     'DESCRIZIONE', 
     'DESCRIZIONE_COMPLETATO', 
    ]; 
return $fields; 
}  

하지만 yii2 충돌 : 알 수없는 속성 가져 오기 : app \ models \ Interventi :: integer

도와 주시겠습니까?

답변

0

필드 이름은 속성 이름 변경에 사용됩니다. 그들은 타입 캐스팅에 사용되지 않습니다. 이

'ID' => 'integer', 

당신은 가능한 $model->ID를 호출 할 수 있도록 묶는하고 당신이 무엇을 의미합니까 to force을 말할 때 그 테이블 열 'integer'

을 보여줍니다? 데이터베이스가 수행해야하는 작업 또는 모델 유효성 검사입니다. 당신은 to force에서 what/where로부터 정수를 얻고 싶습니까?

+0

내 문제는 이것이다 : 32 비트 시스템에서 이 yii2에 의해 생성 된 문자열 그래서 json으로 같은 정수 필드를 처리 https://github.com/yiisoft/yii2/issues/6797 서비스 휴식은 잘못이다. – Janka

0
public function fields() 
{ 
$fields = parent::fields(); 
    $fields = [ 
     'ID' => function ($model) { 
      return intval($model->ID); 
     }, 
     'CODICE_SPEEDY', 
     'DESCRIZIONE', 
     'DESCRIZIONE_COMPLETATO', 
     'SERVIZIO', 'ASSEGNAZIONE', 'PIANIFICAZIONE', 'ESECUZIONE', 'ATTESA_CLIENTE', 'COMPLETATO' 
    ]; 

return $fields; 
}  
관련 문제