Итак, у меня есть вопрос о том, как это сделать наилучшим образом. И я даже не уверен, что делаю это правильно.Лучшая практика для доступа к модели с контроллера в 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', потому что тогда у вас есть лучший SOC. –
А, я вижу. Должен ли быть новый класс запросов для каждого нового почтового процесса? Например, editGeneralSettings, editSecuritySettings, editText, editStatus? – Kaizokupuffball