Laravel 添加模型方法注释,使 PHPStorm 有语法提示 作者: Chuwen 时间: 2021-06-30 分类: Laravel,PHP 评论 ## 安装 1. 在 PHPStorm 上装 `Laravel` 插件 ![](https://cdn.nowtime.cc/2021/06/30/1433782083.png) 2. 在项目中添加 `barryvdh/laravel-ide-helper` 包 ```shell composer require barryvdh/laravel-ide-helper ``` ## 使用 1.为**所有模型**添加注释 ```shell php artisan ide-helper:models ``` 2.为**指定模型**添加注释 > 以下展示的是为 `App\Models\Admin` 模型添加注释,*\App\Models\Admin* 是模型的命名空间名字 ```shell php artisan ide-helper:models \App\Models\Admin ``` 3.为 Facades 生成注释 ```shell php artisan ide-helper:generate ``` 4.生成 PHPstorm Meta file ```shell php artisan ide-helper:meta ``` ## 运行为“模型添加注释”后的截图 ![](https://cdn.nowtime.cc/2021/06/30/3502548972.png)
Laravel 中间件向控制器传入参数 作者: Chuwen 时间: 2020-12-23 分类: Laravel,其他分类 评论 ## 中间件中的handle方法 ``` $request->attributes->add(['data'=>'data]); ``` ## 控制器中要接受参数的方法 ``` function index(Request $request){ echo $request->get('data'); } ``` --- 转载自:https://www.jianshu.com/p/488b92f2015b
Laravel 创建数据库遇到的问题:Illuminate\Database\QueryException : could not find driver (SQL: select * from 作者: Chuwen 时间: 2020-11-19 分类: Laravel,PHP 评论 # 执行以下命令 `php artisan migrate` # 报以下错误 ```log E:\PhpStorm_Project\learn-laravel>php artisan migrate Illuminate\Database\QueryException : could not find driver (SQL: select * from information_schema.tables where table_schema = laravel and table_name = migrations and table_typ e = 'BASE TABLE') at E:\PhpStorm_Project\learn-laravel\vendor\laravel\framework\src\Illuminate\Database\Connection.php:669 665| // If an exception occurs when attempting to run a query, we'll format the error 666| // message to include the bindings with SQL, which will make this exception a 667| // lot more helpful to the developer instead of just the database's errors. 668| catch (Exception $e) { > 669| throw new QueryException( 670| $query, $this->prepareBindings($bindings), $e 671| ); 672| } 673| Exception trace: 1 PDOException::("could not find driver") E:\PhpStorm_Project\learn-laravel\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php:70 2 PDO::__construct() E:\PhpStorm_Project\learn-laravel\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php:70 Please use the argument -v to see more details. ``` # 原因: 1. 你可能配置根目录下的 `.env` 文件,你应该像我这样配置 ```env DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=laravel DB_PASSWORD=laravel ``` 2. 未启用 `pdo_mysql` 扩展 1. Linux:在 php.ini 文件加入这一行 `extension=pdo_mysql.so` 2. Windows:在 php.ini 文件加入这一行 `extension=pdo_mysql.dll`
Laravel 使用artisan 快速创建数据库表 作者: Chuwen 时间: 2020-11-19 分类: Laravel,PHP 评论 # 首先,项目根目录执行 > 下面表示要创建 `chuwen_user` 这个表 ```shell php artisan make:migration chuwen_user ``` 运行结果: ``` E:\PhpStorm_Project\learn-laravel>php artisan make:migration chuwen_user Created Migration: 2020_11_19_060051_chuwen_user ``` ### 你可以在 `项目根目录/database/migrations/2020_11_19_060051_chuwen_user.php` 找到刚刚生成的类 # 编辑表字段 > 更多使用方法请看:https://xueyuanjun.com/post/8179 ```php engine = 'InnoDB';//指定表的存储引擎(MySQL) //$table->charset = 'utf8';//指定数据表的默认字符集(MySQL) //$table->collation = 'utf8_unicode_ci';//指定数据表的字符序(MySQL) $table->increments('id');//自增字段 $table->integer('uid') ->comment('用户唯一ID'); $table->string('email') ->comment('用户注册邮箱') ->nullable();//表示该字段允许为空 $table->string('nickname', 24)//第二个参数可以限定长度 ->comment('用户昵称'); $table->string('password', 32) ->comment('用户密码'); $table->timestamp('reg_time') ->comment('用户注册时间'); }); } /** * Reverse the migrations. * * @return void */ public function down() { // } } ``` # 创建表 ```shell php artisan migrate ``` --- 常见错误:https://nowtime.cc/laravel/1155.html
Laravel 资源控制器操作处理 作者: Chuwen 时间: 2020-11-18 分类: Laravel,PHP 评论 # 命令行快捷生成控制器文件 > 这个命令将会生成一个控制器 app/Http/Controllers/PhotoController.php 。其中包括每个可用资源操作的方法。 ```shell php artisan make:controller PhotosController --resource ``` > 接下来,你可以给控制器注册一个资源路由: ```shell Route::resource('photos', 'PhotoController'); ``` HTTP 方法 URI 动作 路由名称 GET /photos index photos.index GET /photos/create create photos.create POST /photos store photos.store GET /photos/{photo} show photos.show GET /photos/{photo}/edit edit photos.edit PUT/PATCH /photos/{photo} update photos.update DELETE /photos/{photo} destroy photos.destroy