2017-12-28 16 views

答えて

0

にマッピングできるようPostモデルにextra_income属性を変更するにはどのような方法があります。これを処理する最善の方法は、フォーム内の要素の名前をextra_incomeに変更することです。

それとも、あなたはこれを行うことができます:

$data = request()->all(); 
$data['extra_income'] = $data['extra_pay']; 
Post::create($data); 

かを:あなたはmutatorを探している

Post::create(request()->all() + ['extra_income' => request('extra_pay')]); 
+0

時間のおかげで、私はすでにその解決策を知っている!問題は、私はフロントから異なる名前にマップされた複数の属性を持っていますか?私は私の質問を単純化しただけです。だから私はそれを行う良い方法があると思った –

3

createを使用する予定であるため、$fillableのプロパティに追加することを忘れないでください。

class Post 
{ 
    protected $fillable = [ 
     // ... 
     'extra_pay', 
    ]; 

    public function setExtraPayAttribute($value) 
    { 
     $this->attribute['extra_income'] = $value; 
    } 

} 
+0

@ Chay22 thx男 –

0

あなたは3ヶ所

  • 最良の選択であるフォームでの変化でそれを行うことができます。
  • マージを使用して着信要求で変更する$request->merge(['extra_income' => $request->extra_pay]);
  • また、すべての値を手動で設定してPost :: createメソッドで変更します。
関連する問題