laravel相关备忘
此次笔记采用的是laravel5.1版本
1、从gitcheckout下来后,首先在env修改数据库相关
2、默认laravel没有model目录,默认有一个model文件User.php放在app里面,model其实就是对应数据库的实体类文件。
3、
php composer.phar install 与
php composer.phar update
如果当前目录下存在 composer.lock 文件,它会从此文件读取依赖版本,而不是根据 composer.json 文件去获取依赖。这确保了该库的每个使用者都能得到相同的依赖版本如果没有 composer.lock 文件,composer 将在处理完依赖关系后创建它。为了获取依赖的最新版本,并且升级composer.lock
文件,你应该使用update
命令。php composer.phar update,
这将解决项目的所有依赖,并将确切的版本号写入composer.lock
。
如果你只是想更新几个包,你可以像这样分别列出它们:php composer.phar update vendor/package vendor/package2
你还可以使用通配符进行批量更新:php composer.phar update vendor/*
4、添加自定义类包
autoload-dev和autoload-dev:前者是开发环境加载,后者是正式环境加载"autoload": { "classmap": [ "database", "lib" //这个我把它放到app同级 ], "psr-4": { "App\\": "app/" } },
执行php composer.phar install,可以看到autoload_classmap.php里面已经包含了lib下所有文件
5、关于laravel认证功能http://laravelacademy.org/post/163.html
其中中间件定义在E:\lamiangit\laravel\app\Http\Kernel.php
E:\lamiangit\laravel\config\auth.php 此文件定义的是验证的配置,其中
'model' => App\User::class,
定义的是用户验证表的位置。如果User目录有变更,需要修改此处
6、关于日志
配置E:\lamiangit\laravel\config\app.php
'log' => 'daily', //每天
sql日志配置
E:\lamiangit\laravel\app\Providers\AppServiceProvider.php
public function boot() { if (env('APP_ENV', 'APP_DEBUG') == true) { DB::listen(function ($sql, $bindings, $time) { foreach ($bindings as $index => $param) { if ($param instanceof DateTime) { $bindings[$index] = $param->format('Y-m-d H:i:s'); } } $sql = str_replace("?", "'%s'", $sql); array_unshift($bindings, $sql); Log::info(call_user_func_array('sprintf', $bindings)); // dump($sql); }); } }
demo地址:https://github.com/zenghansen/laravelpro
2018-06-22
采用laravel5.6
安装后,尝试了一下phpunit功能,idea选择安装支持laravel框架之后,tests目录可以执行单元测试,其中有个coverage代码覆盖率的测试,需要配置一下idea的phpunit.xml的路径
暗夜之中,才见繁星;危机之下,暗藏转机;事在人为,为者常成。