快速一键生成增删改查页面(附菜单栏添加&翻译详细解读)--Dcat-Admin框架实战(二)

目录

一、启动Dcat-Admin

二、使用代码生成器

三、添加路由配置

四、添加左侧菜单栏

到此,简单的构建就完成了!


Dcat-Admin框架可以一键完成增删查改的从后台Dao层、Service层到前台的Controller层、View层,可谓一夜一个网站啊!  --2021年4月9日

前提

使用“migrate”命令在数据库中创建两张表 contract_records(合同表)、contract_types(合同类型表)。(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

(创建方法请参考我的博客migrations创建数据表--Dcat-Admin框架实战(一) https://blog.csdn.net/have_a_cat/article/details/115538371?spm=1001.2014.3001.5501

 

附:contract_records(合同表)、contract_types(合同类型表)表结构。

一、启动Dcat-Admin

1、进入项目目录(这里我的项目目录是test10)

cd test10

2、启动Dcat-Admin

php artisan serve #(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat)

3、在浏览器输入地址http://127.0.0.1:8000/admin,使用用户名admin,密码admin登录。

二、使用代码生成器

1、进入代码生成器,快速生成

在浏览器输入地址http://127.0.0.1:8000/admin/helpers/scaffold进入代码生成器页面(或者左侧的菜单栏Helpers-->Scaffold)

2、生成“合同表”的增删查改界面。

(1)选择要增删改查的表(这里以“合同表”contract_records为例,故选择contract_records

(2)勾选要生成的PHP代码(表迁移文件、模型、数据仓库、控制器、数据表、翻译文件)

可以看到,上面选择“contract_records”后,可以通过勾选的方式选择生成哪几个PHP文件。这里我们生成模型数据仓库、控制器、翻译文件。(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

(3)提交

3、简单分析“自动生成的PHP文件”

模型Model: /home/admin/test10/app/Models/ContractRecord.php

控制器Controller: /home/admin/test10/app/Admin/Controllers/ContractRecordController.php(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

翻译文件Lang: /home/admin/test10/resources/lang/en/contract-record.php

数据仓库Repository: /home/admin/test10/app/Admin/Repositories/ContractRecord.php(Dcat Admin 构建页面并不直接依赖于 Model,而是引入了数据仓库作为中间层,让页面的构建不再与数据的读写产生强耦合关系。)

帮助文档Ide-helper: dcat_admin_ide_helper.php

app

├──Models

│   └──ContractRecord.php  #模型

├──Admin

│   └──Controllers(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

│        └── ContractRecordController.php  # 控制器

│   └──Repositories           

│        └──Repositories/ContractRecord.php  # 数据仓库

resouces

├──lang(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

│   └──en

│        └──contract-record.php    # 语言包

4、思考&动手:请看博客的工程师🍖,用上述方法同样生成“合同类型(contract_types)”的增删改查~

三、添加路由配置

1、打开路由配置文件 app/Admin/routes.php

往里面添加两行:   

    $router->resource('contractrecord', 'ContractRecordController');

    $router->resource('contracttype', 'ContractTypeController');

到此,就可以打开浏览器输入地址 http://127.0.0.1:8000/admin/contractrecord(或http://127.0.0.1:8000/admin/contracttype),访问刚刚创建完的页面了

可以看到,页面上功能都支持!(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

四、添加左侧菜单栏

1、认识左侧边栏

左侧菜单栏可以显示各个模块的层级关系,并且可以方便用户进入对应的页面。(不像我们刚才需要在浏览器输入页面的链接地址

2、进入菜单栏添加页面。

在浏览器输入地址http://127.0.0.1:8000/admin/auth/menu(或者左侧的菜单栏Admin-->Menu),进入左侧菜单栏编辑页面。

PHP太方便了,根本想象不到菜单栏竟然能以如此简单的方式添加

3、我们将建立的菜单结构

我们将建立一个两层的菜单,设计如下:

├── Contract  #合同管理

│   └── ContractRecord  #合同记录(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

│   └── ContractType  #合同类型

4、填写菜单层级关系和url

(1)创建父级菜单--“合同管理”

父级菜单“Contract”创建说明

Parent

root

Title

Contract

Icon

fa-reorder

URL

 

(2)创建子级菜单--“合同记录”和“合同类型”

子级菜单“ContractRecord”创建说明

子级菜单“ContractType”创建说明

Parent

Contract

Parent

Contract

Title

ContractRecord

Title

ContractType

Icon

fa-adjust

Icon

fa-clone

URL

contractrecord

URL

contracttype

5、左侧菜单栏创建好了!🎈

刷新下,可以看到两级菜单栏已经创建好了,点击可进入对应的页面。

6、揭秘左侧菜单栏

●Dcat Admin 的菜单是保存在数据表 admin_menu 上的

我们从数据库中看一下表admin_menu,发现最后三行数据,正是我们刚才添加的三个“左侧菜单”(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

select * from dcat_admin.admin_menu;

 (所以,直接向表admin_menu插入数据,也会成功创建新的”左侧菜单栏”哦~

在数据库中执行下列语句,将达到同样的效果,创建出和上面一样的左侧菜单栏。(复制下面语句的话,请一直拖到最右面哦)

INSERT INTO ‘admin_menu’ (‘id’,’parent_id’,’order’,’title’,’icon’,’uri’,’extension’,’show’,’created_at’,’updated_at’) VALUES(‘11’,’0’,’8’,’Contract’,’fa-reorder’,’NULL’,’20210409084003’,’20210409084003’);

INSERT INTO ‘admin_menu’ (‘id’,’parent_id’,’order’,’title’,’icon’,’uri’,’extension’,’show’,’created_at’,’updated_at’) VALUES(‘12’,’11’,’9’,’ContractRecord’,’fa-adjust’,’contractrecord’,’20210409085745’,’20210409085745’);

INSERT INTO ‘admin_menu’ (‘id’,’parent_id’,’order’,’title’,’icon’,’uri’,’extension’,’show’,’created_at’,’updated_at’) VALUES(‘13’,’11’,’10’,’ContractType’,’fa-clone’,’contracttype’,’20210409090757’,’20210409090757’);

7、菜单翻译

(1)菜单的翻译文件在resources/lang/en/menu.php

(如果resources/lang/en/下没有找到menu.php,则看7.(2))

在menu.php中添加翻译

<?php

return[

       'titles' => [

              'contract' => '合同管理'

              'contractrecord' => '合同记录'

              'contracttype' => '合同类型'
       ],
];

 (2) resources/lang/en/下没有找到menu.php,则菜单栏的翻译在resources/lang/en/admin.php中

这个发现,真是巧合,新版本的dcat-admin中没有找到menu.php,我自己新建了一个menu.php也不行,后来,就是毫无目的的排查啊思考啊,发现原来菜单栏的翻译在resources/lang/en/admin.php中(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat

#添加左侧菜单栏的翻译

    'menu_titles' => [

       'contract' => '合同管理',

       'contractrecord' => '合同记录',

       'contracttype' => '合同类型',

    ],

 刷新下页面,发现“哎~ 显示中文了呢”

 

到此,简单的构建就完成了!

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Vue-element-admin 是一个基于 Vue.js 和 Element UI 的后台管理系统解决方案,其功能包括登录、权限管理、Dashboard、表单等常见的后台管理系统功能。 要进行增删改查的操作,需要先了解 Vue-element-admin 的代码结构和数据流,以下是一些常用的操作指南: 1. 添加页面:可以在 src/views 目录下新建一个.vue 文件,然后在 src/router/index.js 中添加路由。 2. 修改页面:直接修改 src/views 目录下的相应.vue 文件即可。 3. 删除页面:删除 src/views 目录下的相应.vue 文件,并在 src/router/index.js 中删除相应的路由即可。 4. 增加/修改 API 接口:在 src/api 目录下添加/修改对应的.js 文件即可。 5. 增加/修改菜单项:在 src/layout/components/Sidebar/index.vue 文件中找到对应的位置,添加/修改菜单项。 6. 增加/修改权限:在 src/permission.js 文件中修改对应的权限即可。 需要注意的是,在修改 Vue-element-admin 的代码时,建议先熟悉 Vue.js 和 Element UI 的使用,以及了解前端的基本知识。此外,修改代码前最好先备份原有代码,以防止出现不可预料的错误。 ### 回答2: vue-element-admin是一个基于Vue.js和Element UI的后台管理系统,它提供了一套完整的后台管理模板和常用组件,方便开发者快速开发管理系统。 在vue-element-admin中,实现增删改查功能是非常常见的需求。下面就来具体介绍一下如何实现增删改查。 增加数据 在vue-element-admin中,我们通常使用表单来添加新的数据。首先需要定义一个表单组件,可以使用Element UI提供的组件,也可以自行编写。然后,在表单组件中,需要监听表单的提交事件,将表单中的数据发送到后端,以添加新的数据。 对于后端,需要提供一个API,用于接收前端传递过来的数据。通过API将数据保存到数据库中。 删除数据 在vue-element-admin中,删除数据通常是通过点击列表项的删除按钮来实现的。首先需要在列表项中加入删除按钮,并定义一个删除方法。当用户点击删除按钮时,会调用该方法。 然后,在该方法中,需要向后端发送一个请求,告诉后端需要删除的数据的ID。后端需要提供一个API,将指定的数据从数据库中删除。 修改数据 在vue-element-admin中,修改数据通常是通过点击列表项的编辑按钮来实现的。首先需要在列表项中加入编辑按钮,并定义一个编辑方法。当用户点击编辑按钮时,会调用该方法。 然后,在该方法中,需要获取需要编辑的数据的ID,并将其发送到后端。后端需要提供一个API,用于获取指定ID的数据,并将其返回给前端。 返回数据后,将其填充到表单组件中,易于修改。当用户修改完数据后,需要将数据发送到后端,以更新到数据库中。 查询数据 在vue-element-admin中,实现查询数据通常是在页面顶部加入一个查询表单。当用户输入查询条件后,需要向后端发送一个请求,告诉后端需要查询的条件。后端需要提供一个API,接收查询条件,并返回查询结果给前端。 查询结果需要渲染到页面中,以便用户查看。同时,如果查询结果很多,可以考虑进行分页,提高查询效率。 以上就是在vue-element-admin中实现增删改查的大致过程,需要注意的是,每个步骤都需要前后端协同,才能实现完整的功能。 ### 回答3: vue-element-admin是一个基于Vue.js的后台管理系统解决方案,它提供的各种组件和功能可以帮助我们快速搭建出一个完整的后台管理系统。其中,增删改查是后台管理系统中最常见的功能,下面就来详细介绍一下vue-element-admin增删改查。 一、增加数据 在vue-element-admin中,增加数据分为两种情况:新增数据和批量增加数据。对于新增数据,我们需要引用element-ui的Dialog组件实现弹窗输入新数据,然后将数据通过api的方法传给后端实现数据的插入操作。对于批量增加数据,我们可以使用Vue.js的v-for指令和el-table组件展示已有数据,并通过上传Excel表格的方式批量增加数据。 、删除数据 删除数据同样需要使用element-ui的Dialog组件来实现删除数据的确认框。在调用删除api接口时,我们需要传递一个或多个需要删除的数据的唯一标识符,并在后端进行相应的删除操作。不过需要注意的是,对于某些敏感数据,我们可以通过后端开发的方式做出逻辑删除而非物理删除的处理。 三、修改数据 修改数据也需要使用element-ui的Dialog组件实现弹窗,并将原有的数据展示在弹窗中,让用户修改之后提交保存。我们需要传递修改后的数据和原有数据的唯一标识符给api接口,然后在后端进行相应的修改操作。 四、查询数据 查询数据是后台管理系统中最常用的功能之一,vue-element-admin通过使用el-form和el-input组件实现数据的模糊查询、精确查询等功能。同时,Vue.js的自定义过滤器可以帮助我们对查询出的数据进行格式化,以便展示给用户。 综上所述,vue-element-admin增删改查功能涉及到多个组件和功能,需要结合具体业务场景进行设计和开发。不过通过使用vue-element-admin提供的各种组件和api接口,我们可以快速实现一个完整的后台管理系统,并满足各种业务需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值