使用與 Laravel 中的資料庫列名稱不同的 html 輸入名稱
P粉818125805
P粉818125805 2024-01-16 12:40:25
0
2
387

如何使用與我想要將此輸入資料儲存到的列名稱不同的 html 輸入名稱

我通常會使用這種方法,因為所有 html 輸入名稱都等於資料庫列:

Model::create($request->all());

#現在我知道我可以使用這個:

Model::create([
'name' => $request->name,
'feild' = > $request=>value,
etc.
]);

但是我有很多值,我不想一遍又一遍地重寫它,那麼有沒有一種方法可以將 $request->all() 與第二種方法結合?

P粉818125805
P粉818125805

全部回覆(2)
P粉627027031

我發現PHP array_merge()函數可以使用如下所示:

Model::create(array_merge($request->all(),['DB fieldName' => $newValue]));
P粉731977554

一種方法是使用https://laravel.com /docs/9.x/collections#method-merge merge() 新增字段,並使用https://laravel. com/docs/9.x/collections#method-only 僅傳回要新增至模型中的字段,或https://laravel.com/docs/9.x/collections#method-except 除外() 求逆

$request->merge([
  'new_column_name' => $the_value_you_want_to_use,
  'old_column_name' => the_value_you_donot_want
]);
$request->only('new_column_name')

// or

$request->except('old_column_name')
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板