基本的に、可能な限り最良の方法でこれを行う方法について質問があります。そして、私が最初に正しいことをしているかどうかもわかりません。Laravelのコントローラーからモデルにアクセスするためのベストプラクティス
ユーザーが設定を更新できる設定ページがあります。フォームが提出されると、以下の方法でリクエストを処理しています。
私はProfile
モデルとUser
モデルを持ち、それらの関係も正しく設定されています。
ご覧のとおり、この方法ではすべてがコントローラで行われます。私はProfile
モデルをまったく使っていません。しかし、私はすべきではない?
Profile
モデルではどのような方法で作成して使用できますか?コントローラーではそれほど効果がありません。
申し訳ありませんが、これは不適切な質問です。
ありがとうございます。
/**
* @return mixed
*
* Process general settings
*/
public function postEditGeneralSettings() {
// Validate
$val = Validator::make([
'show_age' => Input::get('show_age'),
'show_gender' => Input::get('show_gender')
], [
'show_age' => 'sometimes|boolean',
'show_gender' => 'sometimes|boolean'
]);
if ($val -> fails()) {
return $this -> backWithErrors($val);
}
// Update
Auth::user() -> profile() -> update([
'show_age' => Input::get('show_age'),
'show_gender' => Input::get('show_gender')
]);
return $this -> backWithSuccess('Innstillingene ble lagret!');
}
非常によく見えます。 'Validator :: make'の代わりにForm Requestを使うことをお勧めします。なぜならあなたはより良いSOCを持っているからです。 –
ああ、そうだ。新しいポストプロセスごとに新しいリクエストクラスがあるはずですか?同様に、editGeneralSettings、editSecuritySettings、editText、editStatus? – Kaizokupuffball