LaraCMS 后台管理系统
96

LaraCMS 后台管理系统

写在前面:最近又很多朋友反映在数据迁移部分出现问题,大多数都是因为mysql 版本的原因,请将环境调整为PHP7.1 + MySQL 5.7 之后再来尝试,执行数据迁移。这是个项目还处于 “幼生期” ,也是学习 Laravel 过程中的产物,Bug是在所难免,需要自己去动手解决。如果连开发文档都不看 也没有耐心去解决问题,那么这个系统并不适合你,请慎重选择。选择是你的权利,但请不要骂人,没有人强迫你使用我的项目。选择使用的朋友,如果有问题可以反馈给我,一起交流学习。
预览:https://www.56br.com/

基于 laravel 5.5 开发,包含了 内容管理 和 API服务两部分。(又一个重复的轮子 :joy:)

LaraCMS 是在学习 laravel ( web 开发实战进阶 + 实战构架 API 服务器) 过程中产生的一个业余作品,试图通过简单的方式,快速构建一套基本的企业站同时保留很灵活的扩展能力和优雅的代码方式,当然这些都得益Laravel的优秀设计。同时LaraCMS 也是一个学习Laravel 不错的参考示例。

QQ群交流:

LaraCMS官方①群: 172960867

使用对象

有一定基础的 Laravel 开发者,非普通站长。

预览

laracms-login.jpg

laracms-main.jpg

laracms.jpg

UI 使用的 LayUI, 前端Logo还未来得及更改,请无视。

使用方式

composer update
php artisan migrate
php artisan db:seed
php artisan storage:link

执行完就可以访问了(要先配置好虚拟主机)。
http://example.com/administrator

注:要先配置好数据库,默认用户: admin@56br.com / 123456

说明

由于 LaraCMS 还未开发完成。所以谨慎使用。具体的开发文档,后续补充。

目前已完成的功能模块:

  • 用户管理
  • 权限管理
  • 角色管理
  • 站点信息
  • 友情链接
  • 栏目导航
  • 分类管理
  • 文章管理
  • 页面管理
  • 幻灯管理
  • 微信公众号管理
  • 前端模块(用户部分暂未完成)
  • 前端 API

注:自动代码生成工具请使用,make:laracms-administrator 具体用法与 make:scaffold 一致。

Github 地址 https://github.com/wanglelecc/laracms

本帖由 Summer 于 7个月前 加精
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 53

可以 安装一下看看

7个月前

看起来很不错的样子,get了~

7个月前

不错不错:)

7个月前
Jourdon

不错,layui 的样式比较简单方便 ,可以全部用 Api 的方式来与后台对接,我的还没写完呢:sweat:

7个月前
wanglelecc

@王东哲 嗯嗯,我也考虑过,全部走API的方式,但是考虑到现实的使用场景,一般都是小型网站或者系统并不会投入很多精力去维护。所以做了一些取舍。

7个月前

@wanglelecc 你debug忘记关了、

file

https://www.56br.com

6个月前

写的很好!

5个月前

希望能长期更新下去

5个月前

Migration table created successfully.

In Connection.php line 664:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the r
ight syntax to use near 'json not null comment '鏁版嵁', status enum('0', '1', '2') not null default '1' at line 1 (SQL: create table lara_forms (id int unsigned
not null auto_increment primary key, object_id char(36) not null comment 'objectId', form varchar(191) not null comment '鎵€灞炶〃鍗?, user_id int not null default
'0' comment '鐢ㄦ埛id', ip varchar(45) not null comment 'IP', data json not null comment '鏁版嵁', status enum('0', '1', '2') not null default '1' comment '鐘舵€?,
created_at timestamp null, updated_at timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci)

In PDOConnection.php line 79:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the r
ight syntax to use near 'json not null comment '鏁版嵁', status enum('0', '1', '2') not null default '1' at line 1

In PDOConnection.php line 77:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the r
ight syntax to use near 'json not null comment '鏁版嵁', status enum('0', '1', '2') not null default '1' at line 1

5个月前

大兄弟 帮忙看一下 数据库一直不成功 第一次用lar 不知道是我的数据库版本问题还是怎么样

5个月前
wanglelecc

请使用 mysql 5.7

5个月前

ErrorException (E_ERROR)
Trying to get property of non-object (View: E:\myphp_www\PHPTutorial\WWW\laracms\resources\views\frontend\default\welcome.blade.php)

5个月前

上面那个问题我用MariaDB后已经解决了

5个月前

ErrorException (E_ERROR)
Trying to get property of non-object (View: E:\myphp_www\PHPTutorial\WWW\laracms\resources\views\frontend\default\welcome.blade.php)

E:\myphp_www\PHPTutorial\WWW\laracms\storage\framework\views\92a37b132b0d2dca74d2df52e3c5d4f4707e7fcd.php

<?php $block = get_block("1593921820130870"); ?>
    <div class="layui-row layui-col-space15">
        <div class="layui-col-md6">
            <?php
            $block = get_block("1593926806514812");
            $category_id = get_block_params($block->content, 'category_id', 0);
            ?>
            <div class="fly-panel">
                <div class="fly-panel-title fly-filter"> <a><?php echo e($block->title); ?></a></div>
                <?php if(isset($block->data) && $block->data): ?>
                <dl class="fly-panel fly-list-one">
                    <?php $__currentLoopData = $block->data; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                    <dd><a href="<?php echo e($item->getLink(2,$category_id)); ?>"><?php echo e($item->title); ?></a><span><i class="iconfont icon-liulanyanjing"></i> <?php echo e($item->views); ?></span></dd>
                    <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                </dl>
                <?php endif; ?>
                <div style="text-align: center">
                    <div class="laypage-main"> <a href="<?php echo e($block->more_link); ?>" class="laypage-next"><?php echo e($block->more_title); ?></a> </div>
                </div>
            </div>

            <!--
            <div class="fly-panel">
                <div class="fly-panel-title fly-filter">
                    <a href="/column/all/" class="layui-this">综合</a><span class="fly-mid"></span>
                    <a href="/column/all/unsolved/">未结</a><span class="fly-mid"></span>

Arguments
"Trying to get property of non-object (View: E:\myphp_www\PHPTutorial\WWW\laracms\resources\views\frontend\default\welcome.blade.php)"

5个月前

上传图片404

file
编辑文章加入图片会提示

file

5个月前

In Connection.php line 664:

SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using pa
ssword: NO) (SQL: select * from information_schema.tables where table_schem
a = forge and table_name = lara_migrations)

In PDOConnection.php line 50:

SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using pa
ssword: NO)

In PDOConnection.php line 46:

SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using pa
ssword: NO)

求解 :sob:

5个月前

大哥好像没有上传数据库配置文件吧。。。?

5个月前
wanglelecc

@粗黑长大硬 麻烦看一下 laravel 开发文档文件存储部分

5个月前
wanglelecc

@Code_Er 麻烦先把 laravel 开发文档认真看一遍。

5个月前

我不想骂你 但是后台上不去你说你该不该骂

5个月前
wanglelecc

@xingchen 实在抱歉,给您带来的困扰。你可以尝试使用 PHP7.1 + Mysql 5.7 试一下,如果有问题可以提 Issues

5个月前

这挺多功能的,挺实用

5个月前

file
请问这是啥

5个月前
wanglelecc

@粗黑长大硬 麻烦多提供一些错误信息

5个月前

留言上传图片 借口异常 :blush:

5个月前
wanglelecc

@粗黑长大硬 这个功能还没做呢

5个月前

file
删除文章出错

5个月前
wanglelecc

@粗黑长大硬 感谢反馈,已修复

5个月前
ayauper

有点小问题。导航,除了首页 其他连接地址的域名都会变成localhost

5个月前
wanglelecc

@ayauper

  1. 是否使用虚拟主机的访问方式?
  2. APP_URL 是否已配置?
  3. 导航创建后是否修改过虚拟域名?
    以上步骤是否均在执行 php artisan migrate 之前

目前已知问题:APP_URL 修改导航链接中的host 不会自动修改,后期会改进。

5个月前
ayauper

虚拟机 homestead 环境下, app_url 已经配置,修改过虚拟域名。
另外,图片上传功能,不能用。

5个月前

这个是layui前端开发的吗

5个月前
wanglelecc

@ayauper
后台的图片上传,自己调试一下吧!我这边没有问题。前台没有做上传图片的接口。

5个月前
wanglelecc

@Winter 是的

5个月前

建议你后台右边那块用 ifrmae。每次点击都一次闪跳 不好

4个月前

file

4个月前
wanglelecc

@Gundy 感谢反馈

4个月前

t挺不错得 简单改了下 就做了个公众号开发后台 :smile: :smile:

4个月前

里面用常见问题处理 也非常值得借鉴

4个月前

laravel这块隐式绑定不是太明白,看到相关手册也不是太懂,这个在哪可以配置

file

按照你写的,我写了一个一样的方法但是没获取到,返回值,找了RouteService,但是这里只有配置前台的,求解答

2个月前

我该如何安装上vendor文件

2个月前
wanglelecc

@jjgentleman 执行 composer update 即可

composer 安装说明:https://pkg.phpcomposer.com/ 找到下面:如何安装 Composer

2个月前

@wanglelecc

file composer update 出现这种情况什么原因

2个月前
yuwuwu

缺少key ,配置的时候 php artisan key:generate

1个月前
wanglelecc

@Wcolor

  1. 确认你的mysql版本是否是 5.7
  2. 保证你的数据库是一个空库
1个月前

file

file

请问这是什么原因呀?@wanglelecc

3周前
wanglelecc

@Promisehp 更新一下代码,这是更换UI的时候残留下来的代码,现在已移除。

3周前

安装完之后有一些问题,打开都正常 后台登录的时候验证码不显示
软连接都已经添加过
/captcha/login?rOjwI9oe 500错误

ErrorException (E_NOTICE)
ob_clean(): failed to delete buffer. No buffer to delete

ErrorException: ob_clean(): failed to delete buffer. No buffer to delete in file /var/www/html/laracms/vendor/mews/captcha/src/CaptchaController.php on line 23
Stack trace:

ErrorException->() /var/www/html/laracms/vendor/mews/captcha/src/CaptchaController.php:23
ob_clean() /var/www/html/laracms/vendor/mews/captcha/src/CaptchaController.php:23
Mews\Captcha\CaptchaController->getCaptcha() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
call_user_func_array() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
Illuminate\Routing\Controller->callAction() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45
Illuminate\Routing\ControllerDispatcher->dispatch() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Route.php:212
Illuminate\Routing\Route->runController() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Route.php:169
Illuminate\Routing\Route->run() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Router.php:658
Illuminate\Routing\Router->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:41
Illuminate\Routing\Middleware\SubstituteBindings->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:68
Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49
Illuminate\View\Middleware\ShareErrorsFromSession->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:63
Illuminate\Session\Middleware\StartSession->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37
Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:66
Illuminate\Cookie\Middleware\EncryptCookies->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
Illuminate\Pipeline\Pipeline->then() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Router.php:660
Illuminate\Routing\Router->runRouteWithinStack() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Router.php:635
Illuminate\Routing\Router->runRoute() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Router.php:601
Illuminate\Routing\Router->dispatchToRoute() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Router.php:590
Illuminate\Routing\Router->dispatch() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176
Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php:65
Barryvdh\Debugbar\Middleware\InjectDebugbar->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/fideloper/proxy/src/TrustProxies.php:56
Fideloper\Proxy\TrustProxies->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27
Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:46
Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/dingo/api/src/Http/Middleware/Request.php:111
Dingo\Api\Http\Middleware\Request->handle() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
Illuminate\Pipeline\Pipeline->then() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151
Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() /var/www/html/laracms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116
Illuminate\Foundation\Http\Kernel->handle() /var/www/html/laracms/public/index.php:55

2周前

我想问下,你怎么添加后台菜单的

1周前
wanglelecc

@ZSCyang

config/administrator.php 文件里面添加

1周前

@wanglelecc
新添加的一级菜单要求必须有下级目录吗,好像不能像仪表盘一样作为一级目录?

6天前

  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!