Как получить список всех моделей в laravel? Всем привет. Задача в том, что нужно получить массив всех созданных моделей. Может быть в laravel есть такой метод, который возвращает список всех существующих моделей в проекте? Если нет, то например, если модели находятся прямо в папке app/ то как перебрать все файлы с большой буквы в папке app, при этом не заходя в субдиректории? Или может быть как то можно перебрать все классы, которые прямые наследники для App? Заранее всем спасибо.
В Laravel нет встроенного метода для получения списка всех моделей в проекте. Однако вы можете использовать следующий код для получения списка всех моделей из определенной директории (например, из папки app/Models):
Этот код найдет все файлы в папке app/Models и добавит их имена в массив моделей. Вы можете дальше доработать этот код, например, чтобы учитывать только файлы с определенным префиксом, или чтобы получить только классы, которые являются наследниками от конкретного класса.
Надеюсь, это поможет вам решить вашу задачу. Если у вас есть дополнительные вопросы, пожалуйста, не стесняйтесь спрашивать.
В Laravel нет встроенного метода для получения списка всех моделей в проекте. Однако вы можете использовать следующий код для получения списка всех моделей из определенной директории (например, из папки app/Models):
use Illuminate\Support\Facades\File;$models = [];
$files = File::files(app_path('Models'));
foreach ($files as $file) {
$className = pathinfo($file, PATHINFO_FILENAME);
$models[] = 'App\\Models\\' . $className;
}
dd($models);
Этот код найдет все файлы в папке app/Models и добавит их имена в массив моделей. Вы можете дальше доработать этот код, например, чтобы учитывать только файлы с определенным префиксом, или чтобы получить только классы, которые являются наследниками от конкретного класса.
Надеюсь, это поможет вам решить вашу задачу. Если у вас есть дополнительные вопросы, пожалуйста, не стесняйтесь спрашивать.