0
안녕하세요 나는 그 4 개 테이블이
public static function getPPV($product_id, $param_id) {
$value = new \App\Models\ParamValue();
$value->value = NULL;
$value->id = NULL;
$pp = \App\Models\ProductParam::where('product_id','=',$product_id)->where('param_id','=',$param_id)->first();
if (!$pp) return $value;
$ppv = \App\Models\ProductParamValue::where('product_param_id','=',$pp->id)->first();
if (!$ppv) return $value;
$value->value = $ppv->productvalue->value;
$value->id = $ppv->productvalue->id;
return $value;
}
그것은 작동하지만 내가 ORM 더 나은 솔루션을 사용하려면 : 나는이 바보 같은 코드를 썼습니다. 파람 모델 :
public function val() {
$p = $this->hasOne('App\Models\ProductParam')->orderBy('id','desc')->where('product_id','=',$this->product_id);
$ppv = $p->getResults()->hasOne('App\Models\ProductParamValue');
$val = $ppv->getResults()->belongsTo('App\Models\ParamValue','param_value_id');
return $val;
}
하지만 제품 ID 를 얻을 수 파람 모델에서
-> 여기서 ('PRODUCT_ID', '=', $ this-> PRODUCT_ID) (우리가 Product_Param (ID, PRODUCT_ID을 가지고, param_id) 나는
예, 가능합니다. 저는 프로젝트에서 팀 단장입니다.하지만 id_ (미소)로 product_id 열 이름을 바꾸려면 비즈니스가 왜 내가하고 싶은지 이해할 수 없기 때문에 고통 스럽습니다. –