当前位置: 首页 > news >正文

一个基于 laravel 和 amis 开发的后台框架, 友好的组件使用体验,可轻松实现复杂页面(附源码)

前言

随着互联网应用的发展,后台管理系统的复杂度不断增加,对于开发者而言,既要系统的功能完备,又要追求开发效率的提升。然而,传统的开发方式往往会导致大量的重复劳动,尤其是在构建复杂的管理页面时。有没有一款工具能够帮助我们简化这些繁琐的过程呢?

Owl Admin 正是为此而生。它是一款基于Laravel和Amis开发的后台框架,旨在通过友好的组件使用体验,让开发者能够快速搭建后台管理系统。

介绍

Owl Admin 是一个基于Laravel和Amis开发的后台框架,具有快速且灵活的特点。它通过JSON的方式在后端构建页面,减少了前端开发的工作量,从而提升了开发效率。此外,Owl Admin 还内置了代码生成器,即使是复杂的页面也能轻松实现。

图片

主要功能

  • 基础后台功能

    • 用户管理

    • 角色管理

    • 权限管理

    • 菜单管理

  • 代码生成器

    • 保存生成记录

    • 导入/导出生成记录

    • 可使用命令清除生成的内容

    • 无需更改代码即可生成完整功能

  • Amis全组件封装

    • 包含150多个组件,无需前端开发即可完成复杂页面

  • 多模块支持

  • 图形化扩展管理


图片

特点

Owl Admin 的特点在于:

  • 基于Amis的JSON页面构建:通过Amis的JSON描述文件在后端构建页面,大大减少了前端开发的工作量。

  • 灵活的前后端分离架构:框架支持前后端分离设计,避免了因框架限制而导致的开发障碍。

  • 强大的内置功能:提供用户管理、角色管理、权限管理、菜单管理等一系列基础后台功能。

  • 代码生成器:内置代码生成器,帮助开发者快速生成功能模块,降低开发门槛。

技术架构

Owl Admin 采用了先进的技术架构,确保了其在性能、易用性等方面的优越表现。

部署方式

OwlAdmin 是 Laravel 的扩展包,在安装前请确保您熟悉 Laravel 的基本使用。

创建 Laravel 项目

composer create-project laravel/laravel example-app

配置数据库信息

<font style="color:rgb(44, 44, 54);">.env</font> 文件中配置数据库相关信息:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=owl_admin
DB_USERNAME=root
DB_PASSWORD=

如果您使用的是 Laravel 11 或更高版本,还需要执行:

php artisan install:api

获取 Owl Admin

composer require slowlyo/owl-admin

安装 Owl Admin

#先发布框架资源
php artisan admin:publish
# 执行安装 (可以在执行安装命令前在 config/admin.php 中修改部分配置)
php artisan admin:install

启动服务,访问 <font style="color:rgb(44, 44, 54);">/admin</font> 路由即可。

初始账号密码均为 <font style="color:rgb(44, 44, 54);">admin</font>

开源协议

Owl Admin 是一个开源项目,遵循 MIT 开源协议,对商用友好,拿来即用。

即刻体验一波

Owl Admin 提供了丰富的功能,以下是一些功能展示:

用户管理

添加用户

编辑用户信息

删除用户

图片

角色管理

创建角色

分配角色权限

图片

权限管理

设置权限

管理权限分配

图片

菜单管理

添加菜单项

编辑菜单项

删除菜单项

图片

代码生成器

生成模型

生成控制器

生成视图

图片

Amis组件封装

使用内置组件构建页面

无需前端开发

图片

多模块支持

轻松管理多个模块

图片

图形化扩展管理

直观管理扩展

结语

Owl Admin 以其高 效的开发体验和强大的功能,为后台管理系统的开发带来了极大的便利。无论是对于新手开发者还是经验丰富的工程师,都能从中受益匪浅。

如果你也希望能够提升开发效率,简化工作流程,那么Owl Admin 将是一个不错的选择。

源码:https://gitee.com/slowlyo/owl-admin

文档:https://doc.owladmin.com/guide/index

相关文章:

一个基于 laravel 和 amis 开发的后台框架, 友好的组件使用体验,可轻松实现复杂页面(附源码)

前言 随着互联网应用的发展&#xff0c;后台管理系统的复杂度不断增加&#xff0c;对于开发者而言&#xff0c;既要系统的功能完备&#xff0c;又要追求开发效率的提升。然而&#xff0c;传统的开发方式往往会导致大量的重复劳动&#xff0c;尤其是在构建复杂的管理页面时。有…...

HTML讲解(二)head部分

目录 1. 2.的使用 2.1 charset 2.2 name 2.2.1 describe关键字 2.2.2 keywords关键字 2.2.3 author关键字 2.2.4 http-equiv 小心&#xff01;VS2022不可直接接触&#xff0c;否则&#xff01;没这个必要&#xff0c;方源面色淡然一把抓住&#xff01;顷刻炼化&#x…...

Linux(Ubuntu)(终端实现helloworld输出)

一、终端实现gcc编译 1.写好helloworld.h&#xff0c;helloworld.c&#xff0c;main.c后&#xff0c;打开终端&#xff0c;切换到保存这些文件的文件夹的目录&#xff0c;我把这些文件存放在helloworld的文件夹下&#xff0c;所以输入cd ~/helloworld 2.查看该目录下的文件&a…...

开源模型应用落地-qwen模型小试-调用Qwen2-VL-7B-Instruct-更清晰地看世界-集成vLLM(二)

一、前言 学习Qwen2-VL ,为我们打开了一扇通往先进人工智能技术的大门。让我们能够深入了解当今最前沿的视觉语言模型的工作原理和强大能力。这不仅拓宽了我们的知识视野,更让我们站在科技发展的潮头,紧跟时代的步伐。 Qwen2-VL 具有卓越的图像和视频理解能力,以及多语言支…...

【乐企-工具篇】有关乐企发票文件生成- OFD和PDF文件生成

有关乐企发票文件生成- OFD和PDF文件生成 本文主要是实现发票的OFD文件以及PDF文件的生成可以参考具体实现思路,具体情况需要根据自己业务进行改造! 具体的OFD文件模板可以从税局进行下载,下载之后放到resources资源目录下。 代码 package com.ruoyi.output.service.thi…...

llama网络结构及源码

目录 模型初始化 config lm_head transformer wte h rms_1/rms_2 attn c_attn c_proj 线性层mlp ln_f rope_cache mask_cache kv_caches tokenizer tokenizer初始化 tokennizer.encoder 位置编码和mask 确定最大文本长度 建立rope_cache 建立mask_cache …...

828华为云征文|Flexus云服务器X实例部署宝塔运维面板

本次华为云Flexus云服务器X实例部署宝塔运维面板教学&#xff0c;这次是推陈出新啊 之前的云耀云服务器L实例已经很不错了&#xff0c;大力赞叹华为云的 同时感谢华为云提供优惠卷&#xff0c;只能说白嫖真是太棒了 华为云近期正在筹办华为云828企业节活动&#xff0c;90款免…...

计算机网络 8.*结构化布线

第八章 结构化布线 第一节 结构化布线基础 一、认识结构化布线 1.定义&#xff1a;在建筑物或楼宇内安装的传输线路&#xff0c;是一个用于语音、数据、影像和其他信息技术的标准结构化布线系统。 2.任务&#xff1a;使语音和数据通信设备、交换设备和其他信息管理系统彼此相…...

c#的委托、事件

程序目的&#xff1a;实现对一个bool型变量的监视&#xff0c;当数据变化时&#xff0c;调用某一个函数&#xff0c;引申出委托、事件等基础概念。 方法一、在form1的类定义中&#xff0c;定义如下代码&#xff0c;这样定义是最直接的&#xff0c;也非常简单&#xff0c;没有涉…...

Day23笔记-Day21和Day22作业讲解单例类

Day22作业讲解 学生类Student:属性:学号&#xff0c;姓名&#xff0c;年龄&#xff0c;性别&#xff0c;成绩 ​ 班级类 Grade:属性:班级名称&#xff0c;班级中的学生 【使用列表存储学生】 ​方法:1.查看该班级中的所有学生的信息2.查看指定学号的学生信息3.查看班级中成绩不…...

k8s中的存储

目录 一 configmap 1.1 configmap的功能 1.2 configmap的使用场景 1.3 configmap创建方式 1.3.1 字面值创建 1.3.2 通过文件创建 1.3.3 通过目录创建 1.3.4 通过yaml文件创建 1.3.5 configmap的使用方式 1.3.5.1 使用configmap填充环境变量 1.3.5.2 通过数据卷使用c…...

【Linux进程控制】进程程序替换

目录 进程程序替换 替换函数 看现象 替换原理 多进程替换 exec*函数使用&#xff08;部分&#xff09;&#xff0c;并且认识函数参数的含义 1.execl 2.execv 3.execvp 4.execvpe execlp 和execlpe 替换函数总结 进程程序替换 替换函数 有六种以exec开头的函数&am…...

02 ETH

以太坊与比特币有什么不同&#xff1f; 以太坊立足比特币创新之上&#xff0c;于 2015 年启动&#xff0c;两者之间有一些显著不同。 比特币就仅仅是比特币&#xff1b;以太坊包括以太币&#xff0c;以太币才是和比特币对等的存在。以太坊是可编程的&#xff0c;所以你可以在…...

web渗透—RCE

一&#xff1a;代码执行 相关函数 1、eval()函数 assert()函数 (1)原理&#xff1a;将用户提交或者传递的字符串当作php代码执行 (2)passby:单引号绕过&#xff1a;闭合注释&#xff1b;开启GPC的话就无法绕过&#xff08;GPC就是将单引号转换为"反斜杠单引号"&a…...

HomeAssistant显示节假日

先看效果 步骤&#xff1a; 新建卡片时选择“Markdown 卡片”代码在文章最下方&#xff0c;当然你也可以自己修改 点击保存/完成 ### {% if now().hour > 6 and now().hour < 9 -%} 早上好&#xff0c; {%- elif now().hour > 9 and now().hour < 12 -%} 上午好…...

AI问答-HTTP:理解 Content-Disposition

本文背景 在下载arraybuffer文件时&#xff0c;想要获取文件名&#xff0c;这时引入本文内容Content-Disposition&#xff0c;我们在Content-Disposition获取到文件名就可以在下载后的文件以该文件名命名了。 一、简介 Content-Disposition是HTTP协议中的一个响应头字段&…...

kubernetes架构

kubernetes cluster由master和node组成&#xff0c;节点上运行着若干kubernetes服务Master节点&#xff1a; master是kubernetes cluster的大脑&#xff0c;运行着的Daemon服务包括kube-apiserver&#xff0c;kube-scheduler,kube-controller-manager&#xff0c;etcd和Pod网络…...

【隐私计算篇】中国剩余定理解释以及Paillier解密加速应用

1. 背景介绍 本篇主要关注中国剩余定理的原理以及在paillier同态加密系统中的应用。在很多工作中&#xff0c;都可以看到中国剩余定理的影子&#xff0c;特别是同态加密提升计算效率的优化工作中&#xff0c;将paillier与中国剩余定理进行结合&#xff0c;能够实现在加密状态下…...

保护您的隐私:隐藏 IP 地址的重要性

在当今的数字时代&#xff0c;我们的在线隐私和安全变得比以往任何时候都更加重要。浏览互联网时保护自己的一种方法是隐藏您的 IP 地址。 但是为什么要隐藏您的 IP 地址以及如何有效地做到这一点&#xff1f; 隐藏您的 IP 地址有助于保护您的在线匿名性。您的 IP 地址就像您的…...

nodejs 007:错误npm error Error: EPERM: operation not permitted, symlink

完整错误信息 npm error Error: EPERM: operation not permitted, symlink npm warn cleanup Failed to remove some directories [ npm warn cleanup [ npm warn cleanup C:\\Users\\kingchuxing\\Documents\\IPFS\\orbit-db-set-master\\node_modules\\ipfs-cli, npm…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强&#xff0c;React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 &#xff08;1&#xff09;使用React Native…...

AI书签管理工具开发全记录(十九):嵌入资源处理

1.前言 &#x1f4dd; 在上一篇文章中&#xff0c;我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源&#xff0c;方便后续将资源打包到一个可执行文件中。 2.embed介绍 &#x1f3af; Go 1.16 引入了革命性的 embed 包&#xff0c;彻底改变了静态资源管理的…...

稳定币的深度剖析与展望

一、引言 在当今数字化浪潮席卷全球的时代&#xff0c;加密货币作为一种新兴的金融现象&#xff0c;正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而&#xff0c;加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下&#xff0c;稳定…...

用机器学习破解新能源领域的“弃风”难题

音乐发烧友深有体会&#xff0c;玩音乐的本质就是玩电网。火电声音偏暖&#xff0c;水电偏冷&#xff0c;风电偏空旷。至于太阳能发的电&#xff0c;则略显朦胧和单薄。 不知你是否有感觉&#xff0c;近两年家里的音响声音越来越冷&#xff0c;听起来越来越单薄&#xff1f; —…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!

目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...

DiscuzX3.5发帖json api

参考文章&#xff1a;PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下&#xff0c;适配我自己的需求 有一个站点存在多个采集站&#xff0c;我想通过主站拿标题&#xff0c;采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...

在golang中如何将已安装的依赖降级处理,比如:将 go-ansible/v2@v2.2.0 更换为 go-ansible/@v1.1.7

在 Go 项目中降级 go-ansible 从 v2.2.0 到 v1.1.7 具体步骤&#xff1a; 第一步&#xff1a; 修改 go.mod 文件 // 原 v2 版本声明 require github.com/apenella/go-ansible/v2 v2.2.0 替换为&#xff1a; // 改为 v…...

从零开始了解数据采集(二十八)——制造业数字孪生

近年来&#xff0c;我国的工业领域正经历一场前所未有的数字化变革&#xff0c;从“双碳目标”到工业互联网平台的推广&#xff0c;国家政策和市场需求共同推动了制造业的升级。在这场变革中&#xff0c;数字孪生技术成为备受关注的关键工具&#xff0c;它不仅让企业“看见”设…...