【发布时间】:2011-10-12 22:31:54
【问题描述】:
我正在使用 CodeIgniter 构建一个 CMS,但我不知道处理各种 CRUD 视图的最佳方法。鉴于我的网址类似于...
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... 添加一个新部分。否则阻止。
所以我的问题是:
- 如何减少正在创建的目录和查看页面的数量?
- list_fields() or field_data() 方法能否适用于任何自动化?
我的一个想法是分析我正在与之交互的表,创建一个动态关联数组来定义我想要公开的字段以及它应该是表单元素的类型,然后将其传递给共同的看法。想法?缺陷?
【问题讨论】:
标签: php codeigniter