我有一个动态嵌套对象的动态json,我创建了这些pojo,但model
总是为NULL我不知道我做错了什么。
这是我的JSon
{
"status": 200,
"message": "Accepted, Ok",
"model": {
"مشخصات کلي": {
"ابعاد": "125X98X76 ميلي متر",
"وزن": "480 گرم",
"ضد آب": false
},
"حسگر و تصوير": {
"محدوده دقت حسگر": "20.0 مگاپيکسل و بيشتر",
"نوع حسگر": "CMOS",
"قطع حسگر": "Crop Frame",
"ابعاد حسگر": "APS-C (23.5 x 15.6 mm)",
"دقت حسگر": "25 مگاپيکسل",
"دقت موثر حسگر": "24.2 مگاپيکسل",
"حداکثر رزولوشن عکس": "6000X4000"
},
"لنز": {
"محدوده زوم": "6 تا 10 برابر بزرگنمايي",
"فاصله کانوني": "18-140 ميلي متر",
"محدوده ديافراگم": "F/3.5-5.6",
"بزرگ نمايي اپتيکال": "7.7 برابر",
"لرزشگير تصوير": true
},
"فيلم": {
"رزولوشن فيلم": "Full HD",
"حداکثر سرعت فيلم": "60 فريم بر ثانيه",
"فيلمبرداري سه بعدي": false
}
}
}
这里是相应的POJO:
public class ProductTechnicalResponse {
@SerializedName("status")
@Expose
private Integer status;
@SerializedName("message")
@Expose
private String message;
@SerializedName("model")
@Expose
private Model model;
}
class Model {
Map<String, Map<String,Object>> pairs;
}
答案 0 :(得分:1)
将您的POJO更改为:
public function getChildren($parent) {
$tree = Array();
if (!empty($parent)) {
$tree = Permission::where('status', 1)->where('parentid', $parent)->pluck('permissionid')->toArray();
foreach ($tree as $key => $val) {
$ids = self::getChildren($val);
if(!empty($ids)){
if(count($ids)>0) $tree = array_merge($tree, $ids);
}
}
}
return $tree;
}
模型是地图,而不是带地图的结构。