2017-11-20 7 views
1

모델 반환 PlayerResultPHP는 - - Laravel 문자열은 부울

protected $fillable = ['result']

result가 DB에 문자열 (VARCHAR (191))이다

DB에

저장된 값은, 예를 들어 '이기'이다 때 eloquent를 통해 액세스하면 true (부울)로 반환됩니다. dd($var)에서

$var = PlayerResult::where('event_id', $event->id)->whereNotIn('player_id', [$player->id])->first();

그래서 왜이다 ... 나는 아직도 같은 주조 (모델)하지만 시도

'승리의 attributes 결과는 original 결과에 사실이다' 부울로 반환 된? 그리고 그것을 고치는 방법? 감사합니다

편집 :

내가 @TimLewis이 문제를 해결 생각했지만, 심지어 내가 임의의 이름으로 열 이름을 이름을 변경, 여전히 이상한 문제가있는 것입니다. ->select('result AS exampleVariable')result 반환 true하지만 exampleVariable 반환 'win'를 쿼리에 추가 될 때 는 - 내가 ...

+0

"능란한 것을 통해 접근 할 때 ..."당신은 낯선 코드를 게시 할 수 있습니까? 실제 코드를보고이 문제를 재현하는 것이 더 쉬울 수도 있습니다. –

+0

@TimLewis -'$ var = PlayerResult :: where ('event_id', $ event-> id) -> whereNotIn ('player_id', [$ player-> id]) -> first(); ' – Nidecker

+0

제발 제발; 코멘트로 게시하지 마십시오. –

답변

1

확인 해당 열 이름을 변경 그래서 나는 열 이름이 문제가 생각하지만, 문제도 해결되지 않았는지, 당신은하지 않습니다 기능이 좋아 :

function getResultAttribute 

또는

function result 

는 또한

보기 위하여 관심이있을 수도 있습니다
function toArray() 

메서드 배열을 반환하기 전에 일부 캐스트를 만들 수 있습니다.

모델에 직접 존재하지 않는 경우 모델에 사용 된 사용자 지정 특성을 확인해야합니다. 해당 기능이 해당 특성에 정의되어있을 수 있기 때문입니다.