0

我研究过前端控制器模式。我确信我将在即将到来的项目中使用这种模式。我还没有编写代码,但是,如何为我的网站使用表示逻辑?如果我想在用户登录并且用户具有某些权限时显示某些信息怎么办?如果某个表单需要数据库中的数据才能工作怎么办?(对于后者,我想用 AJAX 调用相应的控制器并以这种方式加载数据,但我不知道是否有更有效的方法)这让我有点困惑,我想尽可能避免使用框架像 Smarty 或 CakePHP。事先谢谢你。

编辑:我正在考虑使用模板控制器类,这是一个类,其职责是加载某些网页并显示它们,从前端控制器调用。我的主要问题是在调用模板页面时从数据库加载数据。如果有一个表单需要数据库中的数据怎么办?我是否必须依靠 AJAX 来加载数据,或者有没有办法告诉模板加载数据同时保持图层分离?

4

1 回答 1

0

我想我得到了答案。我还没有测试过,但我认为我可以这样做。

首先,HTML5能够为每个标签添加自定义数据属性。考虑到这一点,我可以执行以下操作,因为我们有一个targetController类,其中包含一个名为的方法foo()和一个前端控制器,该控制器将单词“Controller”附加到每个请求:

<select data-target="target" data-action="foo">
</select>

这样我就可以在文档被渲染之前调用某个控制器并调用某个动作!现在,我可以通过一个 DOM 库来加载它们,而不是像常规方式那样包含一个模板,该库会将控制器加载委托给前端控制器作为常规请求,或者通过一个可能执行控制器加载的类。这样我就不必依赖 javascript 来做任何事情。一旦我开始工作,我一定会测试这个解决方案!

于 2013-01-27T09:16:55.077 回答