首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Rails 4的子域中获取资源id?

如何从Rails 4的子域中获取资源id?
EN

Stack Overflow用户
提问于 2015-01-12 17:58:39
回答 1查看 403关注 0票数 5

我们正在开发一个会议管理应用程序,大部分资源都是嵌套的会议资源。现在,我们决定将子域用于会议主页,但在重构资源时遇到了麻烦。

当前的url方案如下:

/会议/:id/发言

/会议/:id/管理

我们希望将/会议/:id部分移到子域中,并使用如下资源:

会议.sitename.com/演讲

会议.sitename.com/管理

以下是当前的路由文件:https://github.com/kodgemisi/confdeck/blob/development/config/routes.rb#L17

实现这一过渡的最佳方式是什么?我们如何阻止当前的url helper?

EN

回答 1

Stack Overflow用户

发布于 2015-08-20 17:56:24

首先让我们调整你的子域类。下面的代码应该足够了

代码语言:javascript
复制
class Subdomain
  def self.matches?(request)
    request.subdomain.present? && request.subdomain != 'www'
  end
end

然后,您应该能够使用以下命令在路由中调用它

代码语言:javascript
复制
constraints(Subdomain) do  
    resource :conference, path: "/" do
      member do
        get 'apply'
        post 'apply' => "conferences#save_apply"
      end
    end

然后在你的控制器中,如下所示:

代码语言:javascript
复制
Conference.find_by_slugged!(request.subdomain)

(我看到您使用了友好的id,所以我想您的子域是会议的sluggged

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27899315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档