에서 속성의 이름을 변경하려면 이름이 일치하지 않습니다.어떻게라는 모델을 가지고 할 Laravel
질문 수정할 수있는 방법이 extra_income
난 당신이 posts
테이블의 형태로 extra_pay
및 extra_income
이 알고있는 것처럼 포스트 모델에 대한 속성이 그래서 extra_pay
에서 속성의 이름을 변경하려면 이름이 일치하지 않습니다.어떻게라는 모델을 가지고 할 Laravel
질문 수정할 수있는 방법이 extra_income
난 당신이 posts
테이블의 형태로 extra_pay
및 extra_income
이 알고있는 것처럼 포스트 모델에 대한 속성이 그래서 extra_pay
에 매핑 할 수있다. 이를 처리하는 가장 좋은 방법은 양식의 요소 이름을 extra_income
으로 변경하는 것입니다.
또는 당신이 할 수 있습니다 :
$data = request()->all();
$data['extra_income'] = $data['extra_pay'];
Post::create($data);
또는를 : 당신은 mutator 찾고있는
Post::create(request()->all() + ['extra_income' => request('extra_pay')]);
시간 내 주셔서 감사합니다. 그러나 나는 이미 그 해결책을 알고 있습니다! 문제는 프론트에서 다른 이름으로 여러 속성을 매핑했기 때문입니다! 나는 단지 내 질문을 단순화했다. 그래서 나는 그것을하는 더 좋은 방법이 있어야한다고 생각했다. –
. create
을 사용하기 때문에 $fillable
속성에 추가하는 것을 잊지 마세요.
class Post
{
protected $fillable = [
// ...
'extra_pay',
];
public function setExtraPayAttribute($value)
{
$this->attribute['extra_income'] = $value;
}
}
@ Chay22 thx man –
당신은 최선의 선택을 양식에에
$request->merge(['extra_income' => $request->extra_pay]);
어떤 버전을 가지고 놀고 있습니까? – Chay22
Laravel 5.6.0. @ Chay22 –
Laravel 5.6 !!! 풀어 놓을 때 !!! ??? –