在ATK4中我可以定义从前端到后端的不同模板吗?

时间:2011-09-13 19:33:26

标签: php templates user-interface atk4

例如,我想将jUI模板用于Admin区域和CRUD,对于FrontEnd和Pages,我想使用Elephant主题(或我的超级秘密自定义主题)。如果是这样我该如何定义它。我为每个区域创建了一个单独的API?这是在我的index.php中的Root。我想修改共享模板并保留旧模板。 我想我应该在root / atk4 / templates / MyNewTemplate中使用新的jUI主题+ css + images创建一个新的Dir并在root / atk4 / templates / shared中创建一个新的Dir,或者在页面类中定义主应用程序?

include 'atk4/loader.php';
$api=new Frontend('sample_project','elephant');
$api->main();

http://agiletoolkit.org

1 个答案:

答案 0 :(得分:1)

根据定义,您的管理和您的前端是不同的Web应用程序,他们应该拥有不同的API类。它们也应位于不同的URL上,因此它们的入口点也不同。 frontend / index.php的内容包含:

$api=new Frontend('MyFrontend','elephant');

而对于admin / index.php

$api=new Admin('MyAdmin');

通过单独的应用程序,您还可以确保前端的身份验证不允许用户访问管理区域。

虽然Admin类不同,但完全正常:

  • 为两个API类定义共同的祖先。 (类Admin扩展了MyApp,类扩展了MyApp)
  • 使用相同的控制器,尤其是在需要进行计算时。例如,如果您要实施Payroll Web App,您可能希望在两个API中都使用$ this-> payroll = $ this-> add('Controller_Payroll')。
  • 必须共享模型。因为您正在访问同一个数据库。您需要做的就是将前端的“lib”文件夹作为PHP资源包含在您的管理员中。

不得共享页面,您不希望混合页面。