프라이머리 키 컬럼을 찍는데 스트링 값이 int형으로 변환되서 나옵니다.
controller에서 var_dump로 찍으면 string 형으로 인식이 되는데 blade 템플릿으로 넘어오면 int형으로 바뀝니다.
다른 필드의 string형 데이터들은 제대로 나오는데 primary key인 컬럼만 int형으로 인식돼요..
어떻게 하면 좋을까요?
primary key는 int로 변환되서 나오는게 더 맞는거 같은데 스트링으로 인식하시려는 용도는 무엇인가요?
기존에 만들어진 테이블의 primary key가 varchar형태로 저장이 되어 있어서 string 형식의 문자열 데이터도 포함되서 들어가 있습니다.
속성 캐스팅으로 id 를 스트링으로 캐스팅해주면 될 것 같아요.
https://laravel.kr/docs/5.4/eloquent-mutators#attribute-casting
답변 정말 감사합니다.
한 번에 해결 됐습니다. 정말 감사합니다 사랑합니다 ^^
이렇게 해 보세요.
class YourModel extends Model { protected $keyType = 'string'; }
프라이머리 키 컬럼을 찍는데 스트링 값이 int형으로 변환되서 나옵니다.
controller에서 var_dump로 찍으면 string 형으로 인식이 되는데 blade 템플릿으로 넘어오면 int형으로 바뀝니다.
다른 필드의 string형 데이터들은 제대로 나오는데 primary key인 컬럼만 int형으로 인식돼요..
어떻게 하면 좋을까요?
primary key는 int로 변환되서 나오는게 더 맞는거 같은데 스트링으로 인식하시려는 용도는 무엇인가요?
기존에 만들어진 테이블의 primary key가 varchar형태로 저장이 되어 있어서 string 형식의 문자열 데이터도 포함되서 들어가 있습니다.