Я пытаюсь создать стандартный метод index () для большинства моих контроллеров, который объединяет поиск, разбивку на страницы и сортировку в одном, чтобы получить все функции списков.Я использую черту для тех контроллеров, которая содержит метод индекса, и этот метод использует некоторые статические свойства, определенные в связанной модели, чтобы узнать, какие столбцы искать, и так далее.Например, мой User.php содержит:
/**
* @var array
*/
public static $searchableColumns = [
'name',
'username',
'title',
'email'
];
/**
* @var array
*/
public static $searchableRelations = [
'groups' => ['searchOn' => 'name']
];
/**
* @var string
*/
public static $defaultOrderBy = 'name';
Моя проблема в том, что ... это просто не правильно.Любое другое свойство в классе является переменной защищенного экземпляра, например: 1004 *
protected $fillable = [
'username',
'email',
...
];
Является ли объявление статических свойств в модели плохой практикой?Если так, где я должен определить что-то вроде этого?