나는 Eloquent에서 반환 된 키를 변경/표준화하는 간단한 방법을 찾고 있습니다. 이 시점에서 내 응용 프로그램과 데이터베이스는 꽤 오래되었습니다. 데이터와 상호 작용할 수있는 새로운 API 세트를 구축 중이지만 데이터베이스를 변경하는 것은 단순히 선택 사항이 아닙니다. 대안으로, 필자는 선택 쿼리에 필드 이름을 매핑하기 만하면됩니다. 그것이 현재 반환로Laravel Eloquent 키 매핑
은 주어진 응답을 가지고 :
[
'companyrecordid': 1234,
'clientid': 2345,
'name': 'Some cool company',
'street_address': '1234 N. Nowhere'
]
원하는 결과는 다음과 같습니다이 추가로 간단 경우 이상적인 세계에서는
[
'id': 1234,
'clientId': 2345,
'name': 'Some cool company',
'streetAddress': '1234 N. Nowhere'
]
, 그것은 놀라운 것 내 모델에 대한 변수 ...
protected static $keymap = [
'companyrecordid' => 'id',
'clientid' => 'clientId',
'street_address' => 'streetAddress',
];
이와 같은 것이 없으면 직접 작성하는 것에 반대하지 말고, 그렇게 할 이유가 없다면 바퀴를 다시 발명하고 싶지 않습니다.
프랙탈! http://fractal.thephpleague.com/ –
나는 프랙탈을 발견했거나 오히려 프랙탈을 연출했다. 나는 지금 그걸 가지고 놀고있다. 이론적으로 단순해야하는 무언가에 꽤 무거워 보입니다. Pre-laravel과 같이했을 것입니다. 'id로 companyrecordid를 선택하고 clientId로 clientid ...'와 같은 것을했을 것입니다. – jacobfogg
당신이 선호하는 것이 있다면 웅변적인 select 절에서 별칭을 지정할 수 없습니다. –