talvbansal/easel

为 Laravel 服务的最小化博客包

dev-master 2017-08-21 21:06 UTC

This package is auto-updated.

Last update: 2024-09-13 07:42:21 UTC


README

为 Laravel 服务的最小化博客包

Editor
<a href="https://travis-ci.org/talvbansal/easel" target="_blank">
    <img src="https://api.travis-ci.org/talvbansal/easel.svg" alt="Build Status" />
</a>

<a href="https://styleci.io/repos/63001540" target="_blank">
    <img src="https://styleci.io/repos/63001540/shield?style=flat" alt="Style CI" />
</a>

<a href="https://github.com/talvbansal/easel/issues" target="_blank">
    <img src="https://img.shields.io/github/issues/talvbansal/easel.svg" alt="Issues" />
</a>

<a href="https://packagist.org.cn/packages/talvbansal/easel" target="_blank">
    <img src="https://poser.pugx.org/talvbansal/easel/downloads" alt="Downloads" />
</a>

<a href="https://insight.sensiolabs.com/projects/06d23269-ac1d-4465-b542-9c38b31f8d91" target="_blank">
    <img src="https://img.shields.io/sensiolabs/i/06d23269-ac1d-4465-b542-9c38b31f8d91.svg?style=flat" alt="SensioLabsInsight"/>
</a>

<a href="https://github.com/talvbansal/easel/blob/master/licence" target="_blank">
    <img src="https://poser.pugx.org/talvbansal/easel/license" alt="License" />
</a>

要求

安装

  1. 您可以使用 composer 下载 Easel

    composer require talvbansal/easel
    
  2. 要注册 easel:installeasel:update artisan 命令以及 Easel 工作所需的新路由,您需要将 Easel 服务提供程序添加到您的 config/app.php 文件中

    \Easel\Providers\EaselServiceProvider::class,
    
  3. 要安装 Easel 到您的项目中,运行以下命令,这将发布所有应用资产和数据库迁移/工厂/种子,迁移将自动从这个命令运行

    php artisan easel:install
    
  4. 最后,您需要填充您的数据库以创建默认管理员用户和初始帖子

    php artisan db:seed
    
  5. 更新您的 config/auth.php 文件以使用 Easel 内置的用户模型(Easel\Models\User

     'providers' => [
         'users' => [
             'driver' => 'eloquent',
             'model' => Easel\Models\User::class,
         ],
     ],
    

    或者,您可以配置 Easel 使用您的 自定义用户模型

  6. 使用默认凭证登录 Easel

    • 电子邮件 admin@easel.com
    • 密码 password
  7. 前往个人资料页面并更新您的详细信息和个人密码!

  8. 开始博客!

更新

  • 每次更新 Easel 时,内部文件都会在运行 composer update 时自动更新,但是新视图和资产只能通过以下命令发布/重新发布

      php artisan easel:update
    
  • 您还可以将上述命令添加到您的项目的 composer.json 文件中的 post-update-cmd

      "post-update-cmd": [
          "Illuminate\\Foundation\\ComposerScripts::postUpdate",
          "php artisan easel:update",
          "php artisan optimize"
      ]
    

自定义

每个应用程序都是不同的,Easel 被设计成可定制的。请确保查看 config/easel.php 以获取可配置选项的完整列表。

用户模型

  • 由于 Easel 被设计为新的起点或添加到现有的项目中,您可以选择使用内置的 User 模型(Easel\Models\User)或使用带有一些更改的现有 User 模型。

  • 内置模型
  • 如果您想使用内置的用户模型(Easel\Models\User),您需要在 config/auth.php 文件中设置它

      'providers' => [
          'users' => [
              'driver' => 'eloquent',
              'model' => Easel\Models\User::class,
          ],
      ],
    
  • 自定义模型

如果您想使用现有模型,您需要对其做以下更改

  1. 您的用户模型需要实现 Easel\Models\BlogUserInterface 并使用 Easel\Models\EaselUserTrait

  2. 您还需要将键 birthday 添加到用户模型的 $dates 属性中

     class User extends Model implements \Easel\Models\BlogUserInterface{
     
         use Easel\Models\EaselUserTrait;
     
         protected $dates = ['birthday'];
         
     }
    
  3. 然后最后更新配置文件 config/easel.php 使用您的用户模型

    'user_model' => \My\Custom\User::class,
    

自定义博客的 URL 前缀

默认情况下,您可以通过以下路由访问博客列表和帖子

    /blog
    /blog/{blog-post-slug}

但是,您可能希望博客可以从不同的 URI 访问,Easel 允许您通过在 .env 文件中添加以下键 BLOG_BASE_URL 来配置它,例如

    BLOG_BASE_URL=/myblog

上述更改将使您的博客响应于

    /myblog
    /myblog/{blog-post-slug}

如果您想使博客响应于 '/' 路由,您需要将新路由添加到您的 routes.php 文件中,如下所示

    Route::get('/', '\Easel\Http\Controllers\Frontend\BlogController@index');

自定义博客帖子列表的视图

当创建博客文章时,您可以使用 Easel 的默认布局,但您可能希望修改视图以适应您的应用程序。您可能还需要为不同的博客文章设置不同的视图 - Easel 可以满足您的需求!只需将 BLOG_POST_LAYOUTS 键添加到您的 .env 文件中,并为其提供位于您的 resources/views 文件夹内的一个文件夹的路径

例如

    BLOG_POST_LAYOUTS=layouts.blog.posts

将指向以下文件夹

    {project}/resources/views/layouts/blog/posts
  • 该文件夹中的每个 blade 模板都将在创建文章页面列出,作为该文章的潜在布局。
  • BLOG_POST_LAYOUTS 文件夹内的子文件夹将 不会 列出,这样您就可以在该单一文件夹结构内存储模板的部分。

您还可以使用 BLOG_POST_LIST 键设置博客文章列表布局,该键再次指向您的 resources/views 文件夹内的相应视图

    BLOG_POST_LIST=layouts.blog.list