Laravel IDE Helper — чрезвычайно полезный инструмент для подсказок и завершения кода, который может значительно облегчить написание кода.
Установить
Установите lave-ide-помощник
# 如果只想在开发环境安装请加上 --dev
composer require barryvdh/laravel-ide-helper
Установите доктрину/dbal "Пожалуйста, установите ее, она требуется при аннотировании полей для моделей"
# 如果只想在开发环境安装请加上 --dev
composer require "doctrine/dbal: ~2.3"
Добавьте в массив "providers" в "config/app.php"
Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class
если ваш
Laravel
Версия меньше 5.5 "Если я правильно помню", пожалуйста, зарегистрируйте поставщика услуг, иначе не обращайте внимания
Если вы устанавливаете только «larave-ide-helper» в среде разработки, вы можете написать следующий код в методе «register» «app/Providers/AppServiceProvider.php»:
public function register()
{
if ($this->app->environment() !== 'production') {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
}
Экспортируйте файл конфигурации (если конфигурация по умолчанию соответствует требованиям, вы также можете пропустить этот шаг)
php artisan vendor:publish --provider="Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider" --tag=config
Ну, тогда вы можете использовать его с удовольствием
использовать
- php artisan ide-helper:generate — Создание аннотаций для фасадов
- php artisan ide-helper:models — Создание аннотаций для моделей данных
- php artisan ide-helper:meta — Создать метафайл PhpStorm
Автоматически генерировать аннотации для фасадов Laravel
запустить из командной строки
php artisan ide-helper:generate
Примечание. Если есть файл «bootstrap/compiled.php», который необходимо удалить в первую очередь, его можно запустить в сгенерированном файле.
php artisan clear-compiled
.
Автоматически создавать аннотации для моделей
Создание аннотаций для всех моделейphp artisan ide-helper:models
, появится запрос:
Do you want to overwrite the existing model files? Choose no to write to _ide_helper_models.php instead? (Yes/No): (yes/no) [no]:
При вводе yes комментарии будут записываться непосредственно в файл модели, в противном случае будет сгенерирован файл "_ide_helper_models.php". Рекомендуется выбрать yes, чтобы не переходить к файлу "_ide_helper_models.php" при отслеживании файла, но лучше всего сделать резервную копию файла модели, по крайней мере использовать git для контроля версии перед генерацией комментариев , на всякий случай.
Совет: Чтобы сгенерировать информацию о полях для модели, в базе данных должна быть соответствующая таблица данных.Не создавайте комментарий, когда миграция не запущена, иначе информация о полях будет недоступна.
Автоматически аннотировать связанные действия
Что это означает? Например, такой код часто встречается в файлах миграции:
$table->string('email')->unique();
В это время, даже если звонокphp artisan ide-helper:generate
, в вызове, как->unique()
Подсказки кода не могут быть реализованы в такой цепной операции.В настоящее время файл конфигурации необходимо экспортировать, «если он экспортируется».'include_fluent' => false
превратиться в'include_fluent' => true
, повторphp artisan ide-helper:generate
. Попробуйте!
Сгенерировать .phpStorm.meta.php
Метафайл PhpStorm может быть сгенерирован для поддержки фабричного шаблона.Для Laravel это означает, что мы можем заставить PhpStorm понять, какой тип объектов мы разрешаем из контейнера IoC. Например: события вернут объект «Illuminate\Events\Dispatcher», с метафайлом, который вы можете вызвать app('events'), и он будет автоматически заполнять методы Dispatcher.
app('events')->fire();
\App::make('events')->fire();
/** @var \Illuminate\Foundation\Application $app */
$app->make('events')->fire();
// When the key is not found, it uses the argument as class name
app('App\SomeClass');
Совет: вам может потребоваться перезапустить Phpstorm, чтобы файл .phpStorm.meta.php вступил в силу.
запустить генерировать автоматически
Если вы хотите автоматически обновлять аннотацию при обновлении пакета зависимостей, вы можете выполнить следующую настройку в файле composer.json:
"scripts":{
"post-update-cmd": [
"Illuminate\\Foundation\\ComposerScripts::postUpdate",
"php artisan ide-helper:generate",
"php artisan ide-helper:meta"
]
}
Совет. Если вы развертываете ide helper только в среде разработки, не делайте этого, чтобы избежать ненужных проблем, связанных с сообщением об ошибках в рабочей среде.
конец
Все использование, вероятно, таково.На самом деле, в Laravel 5.5 и выше вам нужно только установить два пакета «larave-ide-helper» и «doctrine/dbal: ~ 2.3», и вы можете играть счастливо без какой-либо настройки .
Если в тексте обнаружены ошибки,Пожалуйста! топор! просто!