【发布时间】:2011-12-25 10:44:01
【问题描述】:
我刚刚在我的第一个大型项目中使用了催化剂,我想知道我是否按照应有的方式使用了催化剂。
我有 Root.pm,在该文件中我放置了多个 url 处理程序。
每个 url 有一个控制器是最佳做法还是应该考虑分组?
【问题讨论】:
标签: perl model-view-controller catalyst
我刚刚在我的第一个大型项目中使用了催化剂,我想知道我是否按照应有的方式使用了催化剂。
我有 Root.pm,在该文件中我放置了多个 url 处理程序。
每个 url 有一个控制器是最佳做法还是应该考虑分组?
【问题讨论】:
标签: perl model-view-controller catalyst
Catalyst 的优点之一是它的灵活性。您可以这样做,但它最适合您的应用程序。
如果您只支持少数几个 URL,那么将它们全部放在 Root.pm 中并没有本质上的错误。特别是如果没有深度,即 localhost:3000/foo 和 localhost:3000/bar
但是,一旦您开始拥有更长的 URL,例如 localhost:3000/foo/bar/baz/quux,其中 baz 和 quux 是 bar 的参数,您就会看到分离出 Foo.pm 的好处包含一个名为“bar”的动作(子)。 (那是在我们享受连锁行动的乐趣之前......)
虽然there are ways 可以实现相当于Rails 风格的路由表,但一般认为这不是一个好主意。 没有具有路由表是 Catalyst 相对于其他框架的固有特性/优势。
The Definitive Guide to Catalyst 的第 13-14 页对此进行了很好的讨论。如果你没有这本书,你应该。
【讨论】: