私は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
あなたが好むなら、雄弁な選択句でエイリアスを指定できないことはありません。 –