【发布时间】:2012-07-31 03:05:36
【问题描述】:
每个人。我是新的炼油厂CMS(和rails也是)。我在文末总结了我的问题,以防问题描述太长。
这是我的问题: 如何使用路由(或命名空间)过滤后端内容? 例如,我的网站上有几个部门。它们的结构相似,但内容不同。我想分别管理它们。比如说,我有部门 ABC 和部门 EFG 和部门 MAIN,我想通过 /refinery/ABC 和 /refinery/EFG 和 /refinery(/MAIN) 来管理它们。
我怎样才能实现这样的目标?
目前我有两个想法,但不知道如何实现。
首先,我可以将每个部门创建为 Rails 引擎,然后将它们安装在 main_app 上。但是,我不喜欢这种解决方案,因为它会复制许多几乎相同的表,因为每个部门的结构都非常相似。而且我不熟悉创建引擎,担心性能。
我想到的第二种方法是让每个 Refinery::Pages、资源和自定义引擎模型都属于某个部门。然后我可以编写一个控制器,通过指定我上面提到的哪个部门“/refinery/:department”来过滤所有这些东西。
简而言之,我更喜欢第二种方式,虽然我不知道如何:
使每个模型(自定义引擎或炼油厂原生模型)都属于部门。特别是对于炼油厂原生的(资源、图像、页面)
在控制器过滤了我想要的内容后,如何像炼油厂的默认后端一样复制管理渲染。
经过一番搜索,我发现@variables 太多,无法正确过滤。有没有更简单的方法?
提前致谢!
【问题讨论】:
标签: ruby-on-rails ruby content-management-system backend refinerycms