Cruddiy:无代码Bootstrap CRUD生成器
因此,您拥有一个MySQL数据库和一个应该能够执行一些标准数据库操作的用户,例如创建,读取,更新或删除数据库记录。没有什么花哨。
而且,这是非技术用户,因此您不想让他们访问phpMyAdmin,这太困难了。或者更不用说给他们命令行访问权限了。所以,你需要一些简单的数据库形式,建立在你的MySQL数据库之上,但你也不想handcode同一PHP CRUD页面重新!
现在,您可以使用Cruddiy(自己自己执行CRUD)并以零编码快速生成干净的CRUD页面。
您可能已经看过一千遍这样的页面。而且,如果您拥有MySQL数据库,则只需单击几下就可以自行创建它们。
这样的页面无需编写任何代码即可生成。具有适当的标题,分页,操作(查看/编辑/删除)和排序。
上面是旧版的Bootstrap 3外观。这是Bootstrap 4的新外观:
带有Bootstrap 4的Cruddiy和搜索
我已经厌倦了为一些简单的数据库表单一遍又一遍地编程相同的页面。因此,我决定以经典的yakshaving方式将其自动化,并构建了一个生成PHP CRUD页面的生成器。
Cruddiy是一个无代码的PHP生成器,它将为您的MySQL表生成PHP Bootstrap CRUD页面。
Cruddiy的输出是一个/ app文件夹,其中包含您需要的所有内容。您可以重命名和移动你想要这个文件夹中的任何地方,甚至删除Cruddiy当你完成(或运行几次更加让您的应用只是你的方式喜欢它)。Cruddiy仅用于生成/ app文件夹。/ app文件夹就是您的用户将使用的文件夹。
为什么Cruddiy,工具xyz会做同样的事情!
大多数MVC框架(例如Symfony,Django或Yii2)当然也能够为您生成CRUD页面。我已经用完了所有这些。但是通常,您最终至少要拥有80 MB的代码(不要开玩笑),并且只需要几个PHP页面就可以部署和维护各种依赖项!这使我误解了。
,当然还有很多其他的PHP发电机界面污物左右,但他们没有自由报,或者更往往不是建立在顶部其他大框架:所以他们有同样的问题。或者他们只是缺少其他东西。因此,当找不到适合我需要的人时,我决定制造Cruddiy。
粗鲁的目标和特征
- 简单
- 没有依赖关系,只有纯PHP。
- 用PHP编写,并用PHP输出。当生成器正确运行时,生成的应用程序将正确运行。
- 清洁
- 只需生成所需的内容,别无其他。
- 小
- 如果从上面的内容来看不是很明显,则它生成的应用程序应该很小。千字节而不是兆字节。
- 随身携带
- Cruddiy在一个/ app文件夹中生成所有内容。您可以将该文件夹移动到任何地方。生成所需的内容后,您不需要Cruddiy。
- 引导程序
- Bootstrap看起来很干净,并且相对简单小。
我使用Bootstrap 3是因为我喜欢并且知道它比4。
- Bootstrap看起来很干净,并且相对简单小。
常问问题
为什么要使用PHP?
- 爱它或恨它:但是PHP无处不在。您可以在大多数Web服务器上下载Cruddiy,一切顺利。wget zip- >解压缩->检查Web服务器权限(chmod)->浏览到浏览器中的解压缩文件夹,然后按照说明进行操作。
- Cruddiy当然是一种模板引擎。它根据模板删除代码。而且,如果PHP是任何东西,实际上默认情况下它本身就是模板引擎。因此,对于这种事情,这是一种相当不错的语言。
- Cruddiy仅适用于MySQL(目前):MySQL和PHP当然是豆荚中的两个豌豆。
Cruddiy不遵循MVC范例!
是的,如果需要,可以在别处查找。这不是框架。
您的代码充满了肮脏的骇客
当然,生成器会进行大量的数组处理和脏字符串替换,但是Cruddiy生成的PHP页面非常干净。完成页面生成后,您可以删除Cruddiy。它完全构建了一个独立的可移植应用程序,该应用程序几乎可以在任何装有PHP的Web服务器上运行(即大多数)。
您生成的代码不完整
目前缺少的是对数据库插入/更新进行错误值检查(所有字段均为必填字段,并且不检查字段类型:整数与日期等)。这些将引发一般性错误或根本不执行任何操作。我可能会对此进行改进,但是对于大多数用例(请参见上文),这应该不是问题。生成的代码确实使用准备好的语句,并且不应受到SQLi的攻击。但是,嘿,请放下我行,如果你找到的东西!
接下来的功能?
我可能会添加以下内容:
- 暗模式
Bootstrap 4主题已根据20200803修复- 导出为CSV或XLS(用户可能更经常希望这样做)
- 重新排列列顺序
搜索记录(在页面顶部)每20200722年固定- 用户注册(带有用户名和密码的简单表:.htaccess现在可以使用)
- 定义表关系(用于级联删除等)
- 更具体的字段类型(ENUM =下拉列表BOOLEAN =复选框等)
- 更多更好的输入验证
- 捕获更多数据库错误
克鲁迪在行动。
还发表在Medium上。
- 上一篇 »html: button样式 css生成器
- 下一篇 »PHP迭代生成器---yield