Приветствую. Есть вопрос. У меня постоянно в модели передаются данные того, кто смотрит.
Пример, в данном случае передается user_id:
// App\Controllers\Auth\RecoverController
SettingModel::editPassword(['id' => $user_id, 'password' => $newpass]);
Возможно в самой модели надо просто использовать что-то подобное:
public function __construct()
{
$this->user = UserData::get();
}
Но в виду того, что это надо почти в каждой модели, может тогда имеет смысл сделать прослойку (расширить модель):
Это:
class FolderModel extends \Hleb\Scheme\App\Models\MainModel
Поменять на:
// создать BaseModel
class FolderModel extends BaseModel
Сократится в контроллерах, методах, количество передаваемых переменных, но добавится это в моделях. Собственно в модели перенесется.
Ещё пример:
Было
$latest_answers = HomeModel::latestAnswers($this->user);
$topics_user = HomeModel::subscription($this->user['id']);
Станет:
$latest_answers = HomeModel::latestAnswers();
$topics_user = HomeModel::subscription();
Имеет смысл?