我正在为codeIgniter中的项目构建CMS,我想知道当用户在数据库中创建新页面时,是否有任何方法可以通过CMS在codeIgniter中动态创建控制器文件。我不需要创建另一个模型,因为数据库中的表以及视图都是相同的。基本上,网站中的所有页面(链接,标题,内容等)都来自同一个表格。我只想保持这样的uri(www.mywebsite.com/class/function)。也没有路由。
我环顾网络,我发现接近我的要求的唯一一件事就是CRUD“codegen”,但是我不能在网上使用它,而且还有很多我不需要的东西。
答案 0 :(得分:2)
虽然每次用户向数据库添加新页面时都可以创建一个新的控制器,但是让单个控制器将db id或page name作为参数并加载该页面会不会更好? / p>
因此,如果用户创建了两个名为page1和page2的页面,并且您有一个控制器用于提供名为dynamic.php的所有动态页面,那么网址将是
www.mysite.com/dynamic/page1
www.mysite.com/dynamic/page2
每次用户创建页面时创建控制器都是一个很大的开销,并且还需要大量代码才能正确实现,例如,当用户从数据库中删除页面时删除控制器。而且我认为在SO中提供编码解决方案会很麻烦。