devmustafa/yii2-blog-mongodb

使用mongodb的Yii2博客

安装: 84

依赖: 0

建议者: 0

安全: 0

星标: 2

关注者: 2

分支: 2

类型:yii2-extension

1.0.4 2016-12-07 18:31 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:25:43 UTC


README

这是一个使用Mongodb的多语言博客扩展,能够提供出色的性能。

查看我喜欢的这篇教程,以了解更多关于Mongodb的信息:这篇教程

安装

  • 您需要有一个正在运行的Mongodb,因此请从这里下载它:下载链接
  • 您还需要安装Mongodb PHP驱动。

然后您可以通过以下命令运行Mongodb

mongod --fork --logpath /var/log/mongodb/mongodb.log
  • 您可以通过composer设置扩展

    composer require devmustafa/yii2-blog-mongodb

或者在你的composer.json文件中添加以下行

"devmustafa/yii2-blog-mongodb": "*"

配置

  1. 在你的common config文件中添加以下db组件

     ...
     'components' => [
         ...
         'mongodb' => [
             'class' => '\yii\mongodb\Connection',
             'dsn' => 'mongodb://127.0.0.1/DB_MONGO_NAME', // local
             // 'dsn' => 'mongodb://DB_MONGO_USERNAME:DB_MONGO_PASSWORD@DB_MONGO_HOST/DB_MONGO_NAME, // remote
         ],
         ...
     ],
     ...
    
  2. 在你的frontend config文件中添加以下模块

     ...
     'modules' => [
         ...
         'blog' => [
             'id' => 'blog',
             'class' => devmustafa\blog\modules\frontend\Module::className(),
             'used_languages' => ['en', 'ar'], // list of languages used
             'default_language' => 'en', // default language
             'listing_size' => 10, // default size of listing page
             'rules' => [ // setup rules for frontend routes
                 // change key not value
                 'posts' => '/post',
                 'post/<slug>' => '/post/single',
                 'category/<slug>' => '/post/category', // posts related to a specific category
             ]
         ],
         ...
     ]
     ...
    
  3. 在你的backend config文件中添加以下模块

     ...
     'modules' => [
         ...
         'blog' => [
             'id' => 'blog',
             'class' => devmustafa\blog\modules\backend\Module::className(),
             'upload_url' => 'http://example.com/uploads', // full upload url
             'upload_directory' => '/full/path/to/uploads/dir', // full upload directory
             'used_languages' => ['en', 'ar'], // list of languages used
             'default_language' => 'en', // default language
         ],
         ...
     ]
     ...
    
注意

default_language必须是你的used_languages数组中的一个,如果你想在应用中使用动态语言,则留空

'default_language' => '', // empty (don't remove)

在这种情况下,扩展会读取Yii::$app->langauge的值,它应该是你定义的used_languages数组中的一个。

使用方法

  1. 前往你的后台url添加一些帖子/作者/分类

    • /blog/post
    • /blog/author
    • /blog/category
  2. 然后在前端查看

    • /posts