1

使用 Rails,我正在构建几个非常相似的站点。我想将这些实现为一个响应多个域的 Rails 应用程序,并根据域名更改呈现的内容和处理逻辑。每个站点我需要更改/皮肤的区域是:

  • 视图:页面上的字段因站点而异。一些站点的字段比其他站点更多/不同,但有些站点在所有站点中都是通用的
  • 模型(这似乎最好通过为主模型定义一个超类来实现,该主模型会发生变化并为每个站点实现一个子类)
  • 控制器逻辑。有很多相似之处但有一些小的处理差异,包括要处理哪个 Model 子类
  • CSS(这看起来相当简单)

我已经实现了一种机制,使当前的域/应用程序名称对视图、控制器和模型可见。

我正在考虑为每个站点定义一个视图部分,并使用 ERB 逻辑来包含正确的视图。控制器似乎是最不明显的部分。

任何建议都非常感谢。

干杯保罗

4

1 回答 1

0

我已经为我们的应用程序 HiringThing (http://www.hiringthing.com) 实现了类似的东西

为此,我们在应用程序控制器上使用 before_filter 来解析 request.host 并确定请求的网站。然后设置我们在视图、控制器和模型中引用的变量@site,以确定运行时的版本控制要求。

于 2011-11-07T19:24:45.897 回答