Php CodeIgniter CRUD视图抽象
我正在使用CMS构建一个CMS,我在处理各种CRUD视图的最佳方法上遇到了难题。鉴于我的URL类似于Php CodeIgniter CRUD视图抽象,php,codeigniter,Php,Codeigniter,我正在使用CMS构建一个CMS,我在处理各种CRUD视图的最佳方法上遇到了难题。鉴于我的URL类似于 mydomain.com/admin/app/content/pages/edit …其中“admin”是我的控制器,“app”是我的操作方法,我当前将第3、4和5段映射到实际目录/文件,如下所示: /views /admin /content /pages list_view.php
mydomain.com/admin/app/content/pages/edit
…其中“admin”是我的控制器,“app”是我的操作方法,我当前将第3、4和5段映射到实际目录/文件,如下所示:
/views
/admin
/content
/pages
list_view.php
edit_view.php
add_view.php
/banners
list_view.php
edit_view.php
add_view.php
一个警告是,我需要根据调用的页面调用不同的非CRUD模型方法,因此我的app()操作方法开始有一个讨厌的if..else块。此外,由于不同的表数据,每个部分的视图看起来都不一样,因此我不知道如何避免出现一堆视图页面。显然,这一切的缺点是1)我重复了很多代码,2)如果我添加了一个新的管理部分,我必须实际创建大量新目录,并向if…else块添加一个新部分
因此,我的问题是:
function processForm() {
$props = $this->self->getProperties(ReflectionProperty::IS_PUBLIC);
foreach ($props as $prop) :
$prop->setValue($this,$this->input->post($prop->getName()));
endforeach;
}
在哪里
虽然这可能无法直接回答您的问题,但它可能为您提供了设计CRUD的基础。我使用GroceryCRUD已经有相当一段时间了,我对它的基本和高级CRUD操作发誓。它的设计和构建都非常好,除了定制的文件结构之外,它似乎提供了您所需要的一切 CRUD可以很容易地进行修改,以合并您正在寻找的文件/url结构
见太好了,谢谢。事实上,我在一个小时前刚刚找到了GroceryCRUD,我开始潜入其中。我想投你一票,但还没有足够的代表权。:)获得一些代表;)GroceryCRUD非常棒。只是小心不要太依赖积垢。它们在开发过程中都很好,但我经常发现我的应用程序超出了CRUD,我最终还是需要正确地开发它。不过,较新版本的《杂货店》非常棒——有大量的回调和上传等功能。1-many和1-1关系也很好。祝你的项目好运。只是一直在查看我的旧帖子,寻找任何没有答案的帖子-如果答案正确,你可以接受,即使你还不能投票。太好了,谢谢。我(还)不熟悉反射,但我会研究它。我想投你一票,但还没有足够的代表权。:)无论何时,只要你想开始编写可重用的代码,这绝对是有用的东西。
$this->self = new ReflectionClass($this);