gpt4 book ai didi

grails - UrlMapping::匹配 block 中的 View 属性被忽略

转载 作者:行者123 更新时间:2023-12-02 15:38:04 25 4
gpt4 key购买 nike

给定 URI/admin/article/index,为什么这个 url 映射不起作用?

"/admin/$controller/$action?/$id?"{ 
view = "/admin/index" // no dice, ignored
//action = "foo" // uncommented, this is picked up
}

我希望所有管理 Controller 默认使用管理 View (并且不必在每个 Controller 的每个操作中呈现 View )。 “/account/$controller/...”和任何其他应该使用通用 View 的站点模块也是如此。

也许还有另一种方法可以实现这一点,但假设 UrlMappings 是这样做的地方......

最佳答案

看起来你正在尝试做一些与你写的非常不同的事情。

您已经拥有 action在基本 URL 映射中映射,并根据 controller 自动选择 View , 所以你需要 define different mappings对于那些没有 Controller 的 View ,以及默认操作为 foo 的项目的另一个映射. Controller 的默认操作是 index , 但是,因此通常不需要在不指定 Controller 的情况下提供默认操作。

我认为您通常误解了 MVC 框架的工作原理。 Controller 不应该渲染任何东西,并且 View 应该特定于 Controller / Action 。如果多个 Controller 正在呈现完全相同的 View ,我愿意打赌要么 Controller 正在呈现 HTML,要么 View 过于复杂。

您应该查看 Layouts with SiteMesh ,它允许您创建默认模板结构,然后通过 View 更改特定内容。

关于grails - UrlMapping::匹配 block 中的 View 属性被忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6916004/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com