rnkpatel/laravel-blog

laravel博客应用程序

dev-master 2016-06-16 08:17 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:04:09 UTC


README

为Laravel 5提供的一个简单的博客模块

特性

  • 创建/更新/删除文章。
  • 添加不同类别的博客。在不同的类别中创建博客。
  • 包含构建数据库模式的迁移文件
  • Facebook API集成。在Facebook上分享/点赞。
  • Twitter API集成。在Twitter上分享。
  • Google+ API集成。在Google+上分享。
  • 无限Ajax滚动。无需点击下一页。
  • 您可以按需自定义它。

安装

  1. 在config目录下创建一个名为module.php的文件。在module.php中添加以下代码。

     return  [
         'modules' => [
            'Blog',
         ]
     ];
    ```
    
    You can add more then one modules inside `modules` array.  
    
  2. 打开config/app.php文件,并将'App\Modules\ModulesServiceProvider',添加到提供者数组的末尾。

    'providers' => [
        App\Modules\ModulesServiceProvider::class,
    ]
    
  3. 在app目录下创建一个新的名为Modules的文件夹。

  4. 在Modules目录下添加Blog文件夹。App目录结构如下所示

       app/
       |---Modules
           |---Blog
               |---Assets
               |---Components
               |---Controllers
               |---Middleware
               |---Migrations
               |---Models
               |---Views
               |---BlogServiceProvider.php
               |---routes.php
           |---ModulesServiceProvider.php
    
  5. 转到Modules目录,并添加一个名为ModulesServiceProvider.php的文件。

  6. 运行迁移。为此,使用以下命令。

     $ php artisan migrate --path app/Modules/Blog/Migrations
    

    (将在您的用户表中添加Role列。这将定义哪个用户具有作者/管理员角色。您可以根据需要更改表名。)

  7. 将以下方法添加到app/User.php中

     /**
      * user has many posts
      * @return type
      */
     public function posts()
     {
         return $this->hasMany('App\Modules\Blog\Models\Posts', 'author_id');
     }
    
     /**
      * user has many comments
      * @return type
      */
     public function comments()
     {
         return $this->hasMany('App\Modules\Blog\Models\Comments', 'from_user');
     }
    
     /**
      * Check if user can post blog
      * @return boolean
      */
     public function can_post()
     {
         $role = $this->role;
         if ($role == 'author' || $role == 'admin') {
             return true;
         }
         return false;
     }
    
     /**
      * Check if user is admin
      * @return boolean
      */
     public function is_admin()
     {
         $role = $this->role;
         if ($role == 'admin') {
             return true;
         }
         return false;
     }
    
  8. 要设置Facebook API密钥,请打开Blog/Views/layouts/app.blade.php,并在第8行设置

     appId      : 'your app id',
    

  9. 要获取Twitter计数,请在任何提供Twitter计数的API上注册您的域名。打开Blog/Views/posts/show.blade.php,并在第187行设置提供的路径

     data-via : 'Your domain path'
    

  10. 对于路由,您可以在Blog/routes.php中添加/更新(Blog模块有自己的routes.php,因此您可以在其中添加/更新路由。)

  11. 如果您遇到任何找不到类的异常,请运行composer dump-autoload,如果一切正常,则无需执行任何操作

注意

此模块在Laravel 5的新副本中进行了测试。如果您已经自定义了应用程序,请根据您的应用程序进行更改。

演示

http://plugins.auratechmind.net/laravel-blog/public/

讨论

http://auratechmind.net/question/category/laravel-blog/

致谢

https://opensharecount.com/

https://developers.facebook.com/

http://www.findalltogether.com/tutorial/simple-blog-application-in-laravel-5/