我有一个应用程序,可以为多个网站提供服务。类似于Stack Exchange,这几个网站之间的行为非常相似。
给定以下视图目录结构:
views/
shared/users/index.html.erb
app1/users/index.html.erb
app2/users/
如何重新编写Rails中的默认模板渲染,以便:
- 当调用App1的UsersController#index时,它会呈现app1/users/index.html.erb
- 当调用App2的UsersController#index时,它会意识到没有index.html.erb模板,因此在引发缺少模板错误之前检查shared/users/index.html.erb。
如果它在那里找不到,它会回滚到默认位置“app/views/users/index.html.erb”。
太棒了!我自己花了半个小时试图做到这一点。 - Tyler Collier