Tp5商品详情页选中框的移动


详情html 页面










产品详情页


















































Apple iPhone 6s(A1700)64G玫瑰金色 移动通信电信4G手机



推荐选择下方[移动优惠购],手机套餐齐搞定,不用换号,每月还有花费返




价  格



5299.00
降价通知


累计评价612188




促  销


加价购
满999.00另加20.00元,或满1999.00另加30.00元,或满2999.00另加40.00元,即可在购物车换购热销商品






支  持


以旧换新,闲置手机回收 4G套餐超值抢 礼品购




配 送 至


满999.00另加20.00元,或满1999.00另加30.00元,或满2999.00另加40.00元,即可在购物车换购热销商品





{foreach $reg as $v}




{$v.spec_name}



{foreach $v['spec_values'] as $k=>$value}
{$value.spec_value} 

{/foreach}

{/foreach}







+
-






























控制器 页面展示数据

    public function create()
{

$id = 1;
// 取出 id=1的商品 和商品规格
$goods = \app\admin\model\Goods::with('specGoods')->find($id);
// return json($goods);
if (!empty($goods['spec_goods'])) {
if ($goods['spec_goods'][0]['price'] > 0) {
$goods['goods_price'] = $goods['spec_goods'][0]['price'];
}
if ($goods['spec_goods'][0]['cost_price'] > 0) {
$goods['cost_price'] = $goods['spec_goods'][0]['cost_price'];
}
if ($goods['spec_goods'][0]['store_count'] > 0) {
$goods['store_count'] = $goods['spec_goods'][0]['store_count'];
} else {
$goods['store_count'] = 0;
}
}
// $goods['id'];
// 取出value_ids这一列 循环处理
$value_ids = array_unique(explode('_', implode('_', array_column($goods['spec_goods'], 'value_ids'))));

$Value = SpecValue::with('Spec')->where('id', 'in', $value_ids)->select();
$spec_values = (new Collection($Value))->toArray();

$reg = [];
foreach ($spec_values as $v) {
$reg[$v['spec_id']] = [
'spec_id' => $v['spec_id'],
'spec_name' => $v['spec_name'],
'spec_values' => []

];
}
foreach ($spec_values as $v) {
$reg[$v['spec_id']]['spec_values'][] = $v;
}
//
$value_ids_msp = [];
foreach ($goods['spec_goods'] as $v) {
$row = [
'id' => $v['id'],
'price' => $v['price']
];
$value_ids_msp[$v['value_ids']] = $row;
}
// [1_3] => Array([id] => 1 [price] => 10.00 )
// [1_4] => Array([id] => 2 [price] => 20.00 )
// [2_3] => Array([id] => 3 [price] => 10.00 )
// [2_4] => Array([id] =>4 [price] => 20.00 )
$value_ids_msp=json_encode($value_ids_msp);
// print_r($value_ids_msp);
// die();


// print_r($reg);die();
// return json($specValue);


return view('create',['goods'=>$goods,'value_ids_map'=>$value_ids_msp,'reg'=>$reg]);
}
 模型 :商品表关联 商品规格表
class Goods extends Model
{

function specGoods(){
return $this->hasMany('specGoods','goods_id','id');
}
}
规格表关联规格值表

class SpecValue extends Model
{
function spec(){
return $this->belongsTo('Spec','spec_id','id')->bind('spec_name');
}
}






项目

相关