taskforcedev/laravel-support

该包的最新版本(v1.1.7)没有提供许可证信息。

Laravel支持包。被其他Taskforcedev包使用。

v1.1.7 2018-02-06 15:07 UTC

README

Taskforcedev Laravel包的支持包。

提供了一种一致的方式来获取用户指定的布局、站点名称和用户管理权限(如果适用,则使用用户模型上的约定)。

构建状态

1.0.x (Laravel 5.3): Build Status

1.1.x (Laravel 5.4): Build Status

需求

  • Laravel 5.3+

特性

  • 提供了一个“基础”控制器,可以扩展以确保所有视图都能访问buildData方法。
  • 提供了一个单一的地方来编辑所有Taskforcedev包的配置(其他包也可以要求这个)。
  • 如果您的用户模型遵循我们的一些已知约定,则提供了授权助手支持。
  • 提供了用户模型命名空间检测,允许包轻松与用户模型交互。

安装

将以下行添加到您的composer require中:(如果您已经有依赖laravel-support的包,则不需要此步骤)

Laravel 5.3

"require": {
    "taskforcedev/laravel-support": "1.0.*"
},

Laravel 5.4

"require": {
    "taskforcedev/laravel-support": "1.1.*"
},

然后,如果您还没有在config/app.php中添加以下条目,请添加它

Taskforcedev\LaravelSupport\ServiceProvider::class,

配置

此包提供了一个单一的位置,其中可以配置和使用以下内容,由使用此包的包使用。

  • 布局(使用哪个布局,如果设置为自定义布局,则为所有包提供相同的视觉主题)。

  • 框架,允许您指定在布局中启用了哪些框架 - 其他包可以使用此信息来加载适当的显示。

发布配置

为了编辑配置,请运行以下命令将taskforce-support.php文件发布到您的应用配置目录

php artisan vendor:publish --tag="taskforce-support"

控制器

该包提供了一个控制器,如果您的控制器扩展了它,则将提供buildData($data = [])方法,允许所有控制器访问相同的一组共享数据。

除了共享数据外,此方法还接受一个数组,这些额外值将添加到数据对象中。

示例

use Taskforcedev\LaravelSupport\Http\Controllers\Controller

class MyController extends Controller
{
    public function index()
    {
        $data = [
            'title' => 'My Page',
            'description' => 'This is my page',
        ];
        $data = $this->buildData();
        return view('myview', $data);
    }
}

助手

用户

获取用户模型

这可以在包内的eloquent关系中使用,以防止在外部配置中硬编码或配置用户模型。或任何其他需要用户模型名称的地方。

示例
use Taskforcedev\LaravelSupport\Helpers\User as UserHelper;

Class whatever
{
    public function author() {
        $userHelper = new UserHelper();</code>
        $model = $userHelper->getUserModel();
        return $this->belongsTo($model);
    }
}

贡献

问题和拉取请求总是受欢迎的,特别是与新的UI外观相关的内容。

请确保任何PHP都符合PSR-2标准。

对于其他任何内容,请提出GitHub问题。