【问题标题】:Rails render directoryRails 渲染目录
【发布时间】:2017-11-29 01:30:54
【问题描述】:

我的应用程序文件夹很少,但只有一个控制器支持它

folder_one & folder_two,这些文件夹应该基于域呈现

如果域 one 应该被渲染为 folder_one

怎么做?

主要问题是如何根据请求渲染文件夹。

更新:

my app structure


accounts
 first_domain
  index.html.erb
second_domain
 index.html.erb

如果请求来自first_domain.com,则应呈现'accounts/index/first_domain'

如果请求来自'second_domain.com' => 'accounts/index/second_domain'

【问题讨论】:

标签: ruby-on-rails ruby


【解决方案1】:

How can I add a view path to Rails's partial rendering lookup?

或者:

一条路线,一个动作: 在控制器上:

def action_for_this_route
  if request.domain == 'first_domain'
    render "accounts/first_domain/index" and return
  elsif request.domain == 'second_domain'
    render "accounts/second_domain/index" and return
  end
end

或者在控制器上有两个不同的路由和动作 路线.rb

root 'index#first_domain', constraints: lambda { |request| request.domain == 'first_domain' }
root 'index#second_domain', constraints: lambda { |request| request.domain == 'second_domain' }

在控制器上:

def first_domain
  ...
end
def second_domain
  ...
end

但我个人会始终渲染单个“索引”,并在索引内部分渲染第一个或第二个域。

【讨论】:

  • 是否可以在 application_controller 中进行,但不能在每个控制器中进行?
  • @Sts 什么意思?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-20
  • 2011-05-21
  • 2015-02-22
  • 2020-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多