thirdriver

393 经验值

今天突然想到来实现一下帖子链接的 slug ,最新考虑的是使用安神的 pinyin 的,但是效果不太理想,所以就直接接入翻译造了一个轮子,稍后我测试之后会开源到 github 使用效果 app('translug')->translate('如何安装 Laravel'); // or Translug::translate('如何安装 Laravel'); //How to install the

其实使用pluck()更简单一些

collect($arr)->pluck('order_products.*.price')->flatten(1)->sum();

我后续又做了一部分测试,发现通过php artisan serve作为服务器测试一切正常,而用我的本地环境(mac自带环境)才出现上述的问题,暂时具体什么原因还没找出,此外还发现chrome有时会出现多次重定向错误,而foxfire没这个问题,暂时就这样后续有新发现再说。

在使用php artisan make:controller生成控制器类时,自动添加了use  App\Http\Requests;但是App\Http\Requests应该是一个命名空间,use 后面应该跟一个类吧?这里有什么意义吗?或者有什么地方会用到?

再看了“使用第三方Package: Roles”视频后,参照github上的包得说明尝试使用了,但发现一个关于异常处理的问题。

问题具体描述如下:

官方文档中说到使用其自带的中间件可以进行权限控制,当没有权限时会抛出\Bican\Roles\Exceptions\RoleDeniedException, \Bican\Roles\Exceptions\PermissionDeniedException 或者\Bican\Roles\Exceptions\LevelDeniedException异常,只需在app/Exceptions/Handler.php进行相关定义异常处理代码。

routes.php:

use Illuminate\Support\Facades\Auth;

Route::get('/', function () {   

Auth::logout();    

Auth::loginUsingId(2);    

return Auth::user()->id;

});

Route::get('/user', [    

'middleware' => 'role:delete.users',    

'uses' => 'UserController@index'   

 ]);

handler.php

public function render($request, Exception $e)    {        

 if ($e instanceof ModelNotFoundException) {            

$e = new NotFoundHttpException($e->getMessage(), $e);        

}        

if ($e instanceof \Bican\Roles\Exceptions\RoleDeniedException) {            

return redirect()->back();        

}       

 if ($e instanceof \Bican\Roles\Exceptions\PermissionDeniedException) {            

return redirect()->back();       

 }        

if ($e instanceof \Bican\Roles\Exceptions\LevelDeniedException) {            

return redirect()->back();        

}        

return parent::render($request, $e);    

}

当拥有权限时可以正产访问UserController@index当没有权限时直接报出500错误,并没有和预想中的back();为了找出原因我尝试在handler.php文件中echo一些信息,发现render()并没有执行。

再看了Setup Roles And Permissions该视频后有几个疑惑,由于一直无法收到确认邮件故无法再视频下留言。

我的问题:

第一个:

$table->foreign('user_id') ->references('id')->on('users') ->onDelete('cascade'); 

文档中解释是为约束的“on delete”和“on update”属性指定期望的动作,我猜测是为了在关联模型中删除某条记录后自动删除关联表中的对应记录,不是很明白?

第二个:

在定义ACL四张表时如果不添加外键约束,是否影响后续操作?

第三个:

在定义ACL四张表时,添加$table->primary(['role_id', 'permission_id']);文档解释是添加混合索引,是否可以理解为两个列组成的主键索引;而$table->primary('id');是添加主键索引,其是否默认具有自增属性,相反如果定义了$table->increments('id');是否默认id就是主键索引?

以下这些live templates是个人常用的几个 1.bcontainer <div class="container"> <div class="row"> <div class="col-md-9" role="main"> $CODE$ </div> </div> </div> 2.bcss <link rel="stylesheet" href="/cs

本想在phpstorm介绍视频中留言,可以邮箱一直无法收到邮件,故而来次留言,希望大家能够解答困惑,thanks!
第一个,如何取消光标所在行高亮显示的那行阴影;
第二个,如何关闭光标所在位置的单词会自动在文件中匹配所有该单词并且高亮显示的功能,我希望能够像sublime中那样自己选中然后搜索匹配高亮;

我已经成功自己解决,使用'composer dump-autoload',便可以解决,不过我第一次使用后,报出了新的seeder类不存在的错误,之后重新create-project后运行成功解决,希望对遇到相同问题的人有所帮助!