fastadmin学习04-一键crud

FastAdmin 默认内置一个 test 表,可根据表字段名、字段类型和字段注释通过一键 CRUD 自动生成。

create table fa_test
(id           int unsigned auto_increment comment 'ID' primary key,user_id      int(10)                           default 0        null comment '会员ID',admin_id     int(10)                           default 0        null comment '管理员ID',category_id  int unsigned                      default 0        null comment '分类ID(单选)',category_ids varchar(100)                                       null comment '分类ID(多选)',tags         varchar(255)                      default ''       null comment '标签',week         enum ('monday', 'tuesday', 'wednesday')            null comment '星期(单选):monday=星期一,tuesday=星期二,wednesday=星期三',flag         set ('hot', 'index', 'recommend') default ''       null comment '标志(多选):hot=热门,index=首页,recommend=推荐',genderdata   enum ('male', 'female')           default 'male'   null comment '性别(单选):male=男,female=女',hobbydata    set ('music', 'reading', 'swimming')               null comment '爱好(多选):music=音乐,reading=读书,swimming=游泳',title        varchar(100)                      default ''       null comment '标题',content      text                                               null comment '内容',image        varchar(100)                      default ''       null comment '图片',images       varchar(1500)                     default ''       null comment '图片组',attachfile   varchar(100)                      default ''       null comment '附件',keywords     varchar(255)                      default ''       null comment '关键字',description  varchar(255)                      default ''       null comment '描述',city         varchar(100)                      default ''       null comment '省市',json         varchar(255)                                       null comment '配置:key=名称,value=值',multiplejson varchar(1500)                     default ''       null comment '二维数组:title=标题,intro=介绍,author=作者,age=年龄',price        decimal(10, 2) unsigned           default 0.00     null comment '价格',views        int unsigned                      default 0        null comment '点击',workrange    varchar(100)                      default ''       null comment '时间区间',startdate    date                                               null comment '开始日期',activitytime datetime                                           null comment '活动时间(datetime)',year         year                                               null comment '年',times        time                                               null comment '时间',refreshtime  bigint(16)                                         null comment '刷新时间',createtime   bigint(16)                                         null comment '创建时间',updatetime   bigint(16)                                         null comment '更新时间',deletetime   bigint(16)                                         null comment '删除时间',weigh        int(10)                           default 0        null comment '权重',switch       tinyint(1)                        default 0        null comment '开关',status       enum ('normal', 'hidden')         default 'normal' null comment '状态',state        enum ('0', '1', '2')              default '1'      null comment '状态值:0=禁用,1=正常,2=推荐'
)comment '测试表' charset = utf8mb4;

进入项目根目录(也就是think文件所在的目录)。

cd fastadmin

下面是常用命令

//生成fa_test表的CRUD
php think crud -t test
//生成fa_test表的CRUD且一键生成菜单
php think crud -t test -u 1
//删除fa_test表生成的CRUD
php think crud -t test -d 1
//生成fa_test表的CRUD且控制器生成在二级目录下
php think crud -t test -c mydir/test
//删除fa_test表生成的二级目录的CRUD
php think crud -t test -c mydir/test -d 1
//生成fa_test_log表的CRUD且生成对应的控制器为testlog
php think crud -t test_log -c testlog
//生成fa_test表的CRUD且对应的模型名为testmodel
php think crud -t test -m testmodel
//生成fa_test表的CRUD且生成关联模型category,外链为category_id,关联表主键为id
php think crud -t test -r category -k category_id -p id
//生成fa_test表的CRUD且所有以list或data结尾的字段都生成复选框
php think crud -t test --setcheckboxsuffix=list --setcheckboxsuffix=data
//生成fa_test表的CRUD且所有以image和img结尾的字段都生成图片上传组件
php think crud -t test --imagefield=image --imagefield=img
//关联多个表,参数传递时请按顺序依次传递,支持以下几个参数relation/relationmodel/relationforeignkey/relationprimarykey/relationfields/relationmode
php think crud -t test --relation=category --relation=admin --relationforeignkey=category_id --relationforeignkey=admin_id
//生成v_phealth_db2数据库下的fa_test表的CRUD
php think crud -t test --db=v_phealth_db2

参数的含义

参数解释
-t, --table=TABLE表名,带不带表前缀均可
-c, --controller[=CONTROLLER]生成的控制器名,可选,默认根据表名进行自动解析
-m, --model[=MODEL]生成的模型名,可选,默认根据表名进行自动解析
-i, --fields[=FIELDS]生成的数据列表中可见的字段,默认是全部
-f, --force[=FORCE]是否覆盖模式,如果目标位置已经有对应的控制器或模型会提示
-l, --local[=LOCAL]是否本地模型,默认1,置为0时,模型将生成在common模块下
-r, --relation[=RELATION]关联模型表名,带不带表前缀均可
-e, --relationmodel[=RELATIONMODEL]生成的关联模型名,可选,默认根据表名进行自动解析
-k, --relationforeignkey[=RELATIONFOREIGNKEY]表外键,可选,默认会识别为使用 模型_id 名称
-p, --relationprimarykey[=RELATIONPRIMARYKEY]关联模型表主键,可选,默认会自动识别
-s, --relationfields[=RELATIONFIELDS]关联模型表显示的字段,默认是全部
-o, --relationmode[=RELATIONMODE]关联模型,hasone/belongsto/hasmany [default: “belongsto”](v1.3+ 增加了 hasmany)
-d, --delete[=DELETE]删除模式,将删除之前使用CRUD命令生成的相关文件
-u, --menu[=MENU]菜单模式,生成CRUD后将继续一键生成菜单
–db[=key]多数据库支持(参数为tp5中配置的数据库key 在application\config.php添加数据库配置信息)
–setcheckboxsuffix[=SETCHECKBOXSUFFIX]自动生成复选框的字段后缀
–enumradiosuffix[=ENUMRADIOSUFFIX]自动生成单选框的字段后缀
–imagefield[=IMAGEFIELD]自动生成图片上传组件的字段后缀
–filefield[=FILEFIELD]自动生成文件上传组件的字段后缀
–intdatesuffix[=INTDATESUFFIX]自动生成日期组件的字段后缀
–switchsuffix[=SWITCHSUFFIX]自动生成可选组件的字段后缀
–citysuffix[=CITYSUFFIX]自动生成城市选择组件的字段后缀
–selectpagesuffix[=SELECTPAGESUFFIX] 自动生成Selectpage组件的字段后缀
–ignorefields[=IGNOREFIELDS]排除的字段
–editorclass[=EDITORCLASS]自动生成富文本组件的字段后缀
–headingfilterfield[=HEADINGFILTERFIELD]自动生成筛选过滤选项卡的字段,默认是status字段
–sortfield[=SORTFIELD]排序字段

执行一键生成crud以及菜单的命令

php think crud -t test -u 1

在这里插入图片描述
在这里插入图片描述
整体结构如下,方便二次开发

├── application
│   └── admin
│       ├── controller
│       │   └── Test.php                //控制器类
│       ├── lang
│       │   └─ zh-cn
│       │       └── test.php            //功能语言包,按需加载
│       ├── model
│       │   └── Test.php                //模型类
│       ├── validate
│       │   └── Test.php                //验证器类
│       └── view
│           └── test
│               ├── index.html          //列表视图
│               ├── add.html            //添加视图
│               ├── edit.html           //编辑视图
│               └── recyclebin.html     //回收站视图
└── public└── assets└── js└── backend└── test.js             //功能模块JS文件

后台呈现结果
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/777529.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

免费软件“蓝莓投屏”:支持多个Airplay同时镜像的投屏软件。

引言: 由于定制盒子(3288)不支持投屏功能(有些5.1不支持,安卓4.X本身也不支持),需要借助第三方的投屏软件来实现这一需求。所以,研究半天,蓝莓投屏以其简便易用的特性脱颖而出,只需…

每日一题--最长连续序列

洛阳春-岑参 人到洛阳花似锦,偏我来时不逢春。 谁道三冬无春色,冰山高处万里银 目录 题目描述 思路分析 方法及其时间复杂度 法一 暴力枚举: 法二 哈希表遍历: 法三 并查集: 个人总结 题目描述 128. 最长连续序…

独立服务器和云计算各有什么优势

独立服务器和云计算各有什么优势 一、性能 独立服务器:独立服务器提供了独享的硬件资源,通常具有更高的性能和更稳定的性能表现。对于对性能有较高需求的任务,如大数据处理、游戏服务器等,独立服务器是更好的选择。 云计算&…

Java安全篇-Fastjson漏洞

前言知识: 一、json 概念: json全称是JavaScript object notation。即JavaScript对象标记法,使用键值对进行信息的存储。 格式: {"name":"wenda","age":21,} 作用: JSON 可以作为…

网络工程师实验命令(华为数通HCIA)

VRP系统的基本操作 dis version #查看设备版本信息 sys #进入系统视图 system-name R1 #改设备名字为R1进入接口配置IP地址 int g0/0/0 ip address 192.168.1.1 255.255.255.0 #配置接口地址为192.168.1.1/255.255.255.0 ip address 192.168.1.2 24 sub #此…

Apache Hive的基本使用语法(二)

Hive SQL操作 7、修改表 表重命名 alter table score4 rename to score5;修改表属性值 # 修改内外表属性 ALTER TABLE table_name SET TBLPROPERTIES("EXTERNAL""TRUE"); # 修改表注释 ALTER TABLE table_name SET TBLPROPERTIES (comment new_commen…

二维双指针,滑动窗口

二维双指针 思路:考虑暴力做法,我们统计前缀和,然后枚举以 ( x 1 , y 1 ) (x_1,y_1) (x1​,y1​), ( x 2 , y 2 ) (x_2,y_2) (x2​,y2​)为左上,右下顶点的矩阵有多少是合法的,那么,这样的时间复杂度为 n 4…

[k8s] kubectl执行失败后等待一段时间再重试 (Shell实现)

使用Shell脚本实现功能: kubectl执行失败后,等待30秒后再重试,一共重试3次,代码如下: #!/bin/bashKUBECTL_BIN/var/lib/snapd/snap/bin/kubectlERR_MSG_K8S_NOTRUNNING"microk8s is not running" ERR_MSG_C…

【二十七】【算法分析与设计】归并(1),912. 排序数组,归并排序,递归函数的时间复杂度计算,LCR 170. 交易逆序对的总数

912. 排序数组 给你一个整数数组 nums&#xff0c;请你将该数组升序排列。 示例 1&#xff1a; 输入&#xff1a;nums [5,2,3,1] 输出&#xff1a;[1,2,3,5] 示例 2&#xff1a; 输入&#xff1a;nums [5,1,1,2,0,0] 输出&#xff1a;[0,0,1,1,2,5] 提示&#xff1a; 1 < …

Linux 系统 CentOS7 上搭建 Hadoop HDFS集群详细步骤

集群搭建 整体思路:先在一个节点上安装、配置,然后再克隆出多个节点,修改 IP ,免密,主机名等 提前规划: 需要三个节点,主机名分别命名:node1、node2、node3 在下面对 node1 配置时,先假设 node2 和 node3 是存在的 **注意:**整个搭建过程,除了1和2 步,其他操作都使…

go中方法的Receiver (值类型指针类型)

在Go语言中&#xff0c;方法的接收者&#xff08;Receiver&#xff09;定义了该方法是与哪种类型的变量关联。方法的接收者可以是值类型也可以是指针类型&#xff0c;这决定了调用方法时是如何传递接收者的。 值类型与指针类型接收者 值类型接收者 当方法的接收者是值类型时&a…

自然语言处理(NLP)基础:文本预处理与词嵌入

目录 1.引言 2.文本预处理步骤 3.文本预处理工具 4.词嵌入模型介绍与应用 4.1.Word2Vec 4.2.GloVe 4.3.应用示例 5.总结 1.引言 自然语言处理&#xff08;Natural Language Processing, NLP&#xff09;是计算机科学与人工智能领域的重要分支&#xff0c;旨在使计算机理…

ChatGPT 商业金矿(下)

原文&#xff1a;ChatGPT Business Goldmines 译者&#xff1a;飞龙 协议&#xff1a;CC BY-NC-SA 4.0 第十七章&#xff1a;ChatGPT 商业金矿#15&#xff1a;在线课程创建业务 随着人们寻求便捷灵活的学习新技能、推进职业或探索新爱好的方式&#xff0c;在线课程变得越来越受…

基于Redis实现延时任务

两种方案&#xff1a; Redis 过期事件监听Redisson 内置的延时队列 Redis 过期事件监听这种方案存在很多问题&#xff0c;建议使用 Redisson 内置的 DelayedQueue 方案。 Redis 过期事件监听实现延时任务原理 Redis 2.0 引入了发布订阅 (pub/sub) 功能。 在 pub/sub 模式下…

Mini-Gemini: Mining the Potential of Multi-modality Vision Language Models

Mini-Gemini: Mining the Potential of Multi-modality Vision Language Models 相关链接&#xff1a;arxiv 关键字&#xff1a;Vision Language Models、Multi-modality、High-Resolution Visual Tokens、High-Quality Data、VLM-guided Generation 摘要 在这项工作中&#x…

unity学习(76)--窗口化和后台运行

1.通过如下方式将编译的游戏设置为窗口模式。 成功&#xff1a; 2.现在只有鼠标点击的窗体游戏运动&#xff0c;其他窗体游戏都会卡住。 2.1build setting中 2.2unity内部Project Settings 也被同步修改了

火车头通过关键词采集文章的原理

随着互联网信息的爆炸式增长&#xff0c;网站管理员和内容创作者需要不断更新和发布新的文章&#xff0c;以吸引更多的用户和提升网站的排名。而火车头作为一款智能文章采集工具&#xff0c;在这一过程中发挥着重要作用。本文将探讨火车头如何通过关键词采集文章&#xff0c;以…

CDH集群hive初始化元数据库失败

oracle数据库操作&#xff1a; 报错如下&#xff1a;命令 (Validate Hive Metastore schema (237)) 已失败 截图如下&#xff1a; 后台日志部分摘录&#xff1a; WARNING: Use “yarn jar” to launch YARN applications. SLF4J: Class path contains multiple SLF4J binding…

Vite 为什么比 Webpack 快?

目录 1. Webpack 的构建原理 2. Script 的模块化&#xff08;主流浏览器对 ES Modules 的支持&#xff09; 3. Webpack vs Vite 开发模式的差异 对 ES Modules 的支持 底层语言的差异 热更新的处理 1. Webpack 的构建原理 前端之所以需要类似于 Webpack 这样的构建工具&…

主机安全-德迅卫士

什么是主机安全&#xff1f; 主机安全&#xff0c;其核心内容包括安全应用交付系统、应用监管系统、操作系统安全增强系统和运维安全管控系统。它的具体功能是指保证主机在数据存储和处理的保密性、完整性&#xff0c;可用性&#xff0c;它包括硬件、固件、系统软件的自身安全&…