Laravel 5.1'i kullanarak ilgili sorularla birlikte bir dizi kategori alıyorum.Belirtilen değer dizisine nesne dizisini düzleştirme
$categories = Category::with(['questions'=>function($query){
$query->select('id', 'category_id');
}])->get();
Bu beni alır:
Ben ancak select
işe gitmek için, ben katılmak sütun, nam category_id
belirtmek gerekir, iç içe soruların sadece isimler istiyorum
[
{
"id": 1,
"category": "Anatomy",
"created_at": "2016-04-13 00:46:12",
"updated_at": "2016-04-13 00:46:12",
"questions":[
{"id": 1, "category_id": 1},
{"id": 2, "category_id": 1},
{"id": 3, "category_id": 1},
{"id": 4, "category_id": 1},
...
]
}, ...
]
bunun güzel olacağını, böylece questions : [
sadece nesnelerin yerine kimlikleri içeren alabilirsiniz nasıl
[
{
"id": 1,
"category": "Anatomy",
"created_at": "2016-04-13 00:46:12",
"updated_at": "2016-04-13 00:46:12",
"questions":[
1, 2, 3, 4 ...
]
}, ...
]
Harita kullanarak toplamaya ve kimlikleri listelemeye çalıştım. Bu işe yaramazsa: Ben önyüzü ile halletmek gerek kalmaz
$test = collect($categories)->map(function ($q) {
return collect($q)->lists('id')->toArray();
});
Burada bu işlemek için tercih ediyorum.
Sunucunuzu kullanarak, kodunuzu DRY olarak kullanmayı düşünün. İşte bir tane: https://github.com/thephpleague/fractal – Mysteryos