yidashi 2016-03-03 11:55:43 55418次浏览 68条评论 42 12 0

demo地址 demo地址
demo后台地址: demo后台地址 帐号 demo 密码 111111

现有功能:

  • rbac权限管理

  • 系统配置,管理员操作日志等

  • 文章,单页,评论,弹幕等

  • 数据库备份还原

  • 国际化 主题 皮肤

  • 可拆卸插件

  • todo

获取源码

获取源码

使用

composer install
php yii app
php yii serve

访问

前台 http://localhost:8080

后台 http://localhost:8080/admin

截图:

QQ20160706-0@2x.png
QQ20160706-1@2x.png

觉得很赞
  • 评论于 2017-05-16 09:36 举报

    楼主,后台界面是你自己写的哇

    1 条回复
  • 评论于 2017-05-18 12:10 举报

    bawei的易大师?

  • 评论于 2017-06-09 17:15 举报

    composer install 安装报错啊

  • 评论于 2017-07-07 22:51 举报

    居然这么久了

  • 评论于 2017-07-16 12:50 举报

    终于弄出来了,搞了一天半!在这里列一下安装时的坑,首先声明一下我是yii小白,本身对yii这框架理解的还不透彻,所以也是写给小白的。

    一、新代码的结构说明

    yii默认的是backend和frontend,安装完后,这俩文件夹下都有web/index.php。易大师现在是统一入口在根据录的web下。目录结构说明中也有这一点,当时就没看,所以一直在localhost下找对应的frontend/web 和backend/web. 所以大家也不要纠结这俩目录下有没有web目录了,现在入口就一个根目录下的web,web里面又分了admin和api。所以对应的前后台是:
    前台: web/
    后台: web/admin
    接口: web/api

    二、正确的安装姿势

    我先是从yiichian上看的,然后又去git看的,可能时间太久远了吧,安装步骤跟代码都对应不上了,yiichina那些评论里说的问题也对应不上现在的代码结构了。在这里说一下安装步骤与坑。
    1、git下载代码,composer install 安装依赖包。
    2、我用的是xampp,mac平台,修改apache的配置文件:/Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf 如果你是其他的windows或者linux,修改对应文件即可:添加如如下代码:

    <VirtualHost *:80>
          ServerName www.testyii.com
          DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/yii2cmf-master/web/"
    </VirtualHost>
    <VirtualHost *:80>
          ServerName admin.testyii.com
          DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/yii2cmf-master/web/admin/"
    </VirtualHost>
    

    这样就把前后台映射好了,对了还要修改本地hosts文件,我的是修改/etc/hosts 添加映射:

    127.0.0.1   www.testyii.com
    127.0.0.1   admin.testyii.com
    

    这里给大家推荐mac上修改host的一个软件 SwitchHosts!
    配置完映射之后,打开浏览器访问:www.testyii.com ,不出意外的话会出现安装界面,然后一步步的来,这时候有几个坑:
    1)在输入db信息时,如果mysql中没有对应的数据库会提示不存在,所以需要先在mysql中创建数据库.(难道这个地方不是自动给安装的么?)
    2)完了之后接着是床架admin用户信息,填完对应的用户信息之后,会出现loading界面,不出意外的话就跳到最后一步,设置要安装的模块,完成之后就可以显示登录界面了,输入刚才添加的用户信息就可以进入到后台界面了,哈哈,这是顺利的情况下,我想很多人应该跟我一样,卡在了loading这里,一直在转圈圈,于是我用断电调试,发现卡在了几个地方,因为没有做容错导致错误信息没有抛出来。出错是因为在设置缓存时由于权限问题,导致写缓存失败,随后在用到缓存的时候,取不出来,作者把缓存文件放在了根目录cache文件下,在执行composer install时,发现打印信息如下

    > php -r "file_exists('.env') || copy('.env.example', '.env');@chmod('.env', 0766);"
    > yii\composer\Installer::postCreateProject
    chmod('cache', 0776)...done.
    chmod('web/assets', 0776)...done.
    chmod('web/storage', 0776)...done.
    chmod('web/admin/assets', 0776)...done.
    chmod('api/runtime', 0776)...done.
    chmod('backend/runtime', 0776)...done.
    chmod('frontend/runtime', 0776)...done.
    chmod('web/api/assets', 0776)...done.
    

    在mac下这0776的权限不够,我自己又"chmod -R 777 cache",然后写缓存就可以成功了,同样的其他的几个地方也设置成了777就可以读写了。
    由于写cache缓存失败,代码没有做容错处理的这几个地方是:

    public function installConfig()
    {
        \Yii::$app->setKeys($this->envPath);
    	//如果取缓存失败,这个$data会是false,下面的for循环就会抛异常,但是没有抛信息,所以一直loading。
        $data = \Yii::$app->getCache()->get(SiteForm::CACHE_KEY);
        foreach ($data as $name => $value) {
            Yii::$app->setEnv($name, $value);
        }
    	return true;
    }
    public function createAdminUser()
    {
    	   //如果取缓存失败,这个$data会是false,再把$data当数组用时就会报错,所以一直loading。
            $data = \Yii::$app->getCache()->get(AdminForm::CACHE_KEY);
            $user = new User();
            $user->setScenario("create");
            $user->email = $data["email"];
            $user->username = $data["username"];
            $user->password = $data["password"];
    
            if($user->create() == false) {
                return current($user->getFirstErrors());
            }
            return null;
    }
    

    三、未解决的问题

    1、当成功安装以后,添加文章,在前台访问时报错:Class 'common\widgets\editormd\Editormd' not found。这个还没解决。
    2、希望大湿多多完善代码吧,让我们这些小白,可以直接上手就用了。

    1 条回复
    评论于 2017-07-17 14:05 回复

    辛苦,感谢。。你提到的问题都已经解决了

    觉得很赞
  • 评论于 2017-09-04 11:33 举报

    嗯。不错。赞

    觉得很赞
  • 评论于 2017-12-06 17:02 举报

    前台留言那一块 去留言 编写好留言 点击 提交 就报这个错

    [frontend][/index.php?r=suggest%2Fcreate]
    Message

    exception 'yii\base\ErrorException' with message 'Undefined offset: 0' in D:\phpStudy\WWW\yuan\yii2cmf\common\behaviors\CommentBehavior.php:99
    Stack trace:
    #0 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\db\BaseActiveRecord.php(139): yii\base\Object->get()
    #1 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\db\BaseActiveRecord.php(285): yii\base\Component->
    get()
    #2 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\Object.php(118): yii\db\BaseActiveRecord->get()
    #3 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\Object.php(134): common\behaviors\CommentBehavior->getCommentEnabled()
    #4 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\db\BaseActiveRecord.php(139): yii\base\Object->
    get()
    #5 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\db\BaseActiveRecord.php(285): yii\base\Component->get()
    #6 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\Model.php(263): yii\db\BaseActiveRecord->
    get()
    #7 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\Model.php(358): yii\validators\Validator->validateAttributes()
    #8 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\db\ActiveRecord.php(455): yii\base\Model->validate()
    #9 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\db\BaseActiveRecord.php(643): yii\db\ActiveRecord->insert()
    #10 D:\phpStudy\WWW\yuan\yii2cmf\frontend\controllers\SuggestController.php(45): yii\db\BaseActiveRecord->save()
    #11 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\InlineAction.php(57): frontend\controllers\SuggestController->actionCreate()
    #12 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\InlineAction.php(57): ::call_user_func_array:{D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\InlineAction.php:57}()
    #13 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\Controller.php(156): yii\base\InlineAction->runWithParams()
    #14 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\Module.php(523): yii\base\Controller->runAction()
    #15 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\web\Application.php(102): yii\base\Module->runAction()
    #16 D:\phpStudy\WWW\yuan\yii2cmf\vendor\yiisoft\yii2\base\Application.php(380): yii\web\Application->handleRequest()
    #17 D:\phpStudy\WWW\yuan\yii2cmf\web\index.php(22): yii\base\Application->run()
    #18 {main}

  • 评论于 2017-12-06 17:03 举报

    QQ图片20171206170154.png

您需要登录后才可以评论。登录 | 立即注册