【问题标题】:Phalcon how are views linked to controllersPhalcon 视图如何链接到控制器
【发布时间】:2014-11-30 21:38:56
【问题描述】:

我为我的数据库表 app_categories 创建了一个脚手架 crud

这会创建一个名为

的模型和控制器
AppCategories

但是视图是在一个名为

的文件夹中创建的
app_categories

以前我假设视图链接到控制器的方式是通过名称来链接的,但这显然是不同的。

所以我有两个问题:

1 - 仅仅是去掉 _ 并通过名称链接还是有其他方式链接视图和控制器/模型?

2 - 假设我想将所有内容移动到一个新文件夹中,而不是 views/app_categories 我想将它移动到 views/admin/app_categories/ 我需要更改什么才能使其工作,我猜这与1,这可能是一个愚蠢的问题,但因为我似乎无法找出它如何将模型链接到我不知道的视图。在 Yii 中,您渲染视图并给出视图所在位置的链接,但在 Phalcon 中它是如何工作的并不明显。

我是 Phalcon 的新手,但我尝试扫描电子书“phalcon 入门”以及我在 phalcon 上购买的文档和视频教程,但我很难找到它,我可能看错了部分,或者它可能没有被覆盖,更可能是它非常明显,我错过了。

【问题讨论】:

    标签: phalcon


    【解决方案1】:

    1)

    如果未手动选择视图,则 phalcon 将根据控制器/动作自动解析视图

    例如

    route /app-categories
    

    解决

    AppCategoriesController
    indexAction
    

    并解析视图

    views/app_categories/index.(phtml/volt)
    

    模型与如何解决这些问题无关,它是在路由器内部处理的

    来源: http://docs.phalconphp.com/en/latest/reference/routing.html#default-behavior

    2) 如果您在该链接中进一步阅读,您可以自定义路由器将如何处理您的网址。您正在寻找的是模块路由: http://docs.phalconphp.com/en/latest/reference/routing.html#routing-to-modules

    但是,您需要设置一个模块骨架才能使其正常工作。

    不过,对您的问题最简单的答案是手动选择视图

    $this->view->pick('/admin/app_categories/index');
    

    我建议为您感兴趣的事情设置模块

    【讨论】:

      【解决方案2】:

      你应该学习结构,因为有很多类型可供下载。 https://github.com/phalcon/mvc

      AppCategories 是驼峰化的,因此视图文件夹转到 app_categories,路由器转到 /app-categories

      Appcategories -> 视图 = appcategories -> 路由器 = /appcategories

      关于文件夹结构,您应该尝试多个模块 /admin/views /frontend/views

      https://github.com/phalcon/mvc/tree/master/multiple

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-18
        • 2015-10-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多