Rails:将子域路由到资源

2024-04-12

是否可以将子域映射到资源?我有一个公司模型。目前,使用 subdomain_fu,我的路由文件包含:

map.company_root  '', :controller => 'companies', :action => 'show',
                      :conditions => { :subdomain => /.+/ }

我的公司模型包含一个“子域”列。

虽然这按预期工作,但它是一条命名路线并且并不安静。本质上,我需要将“name.domain.com”映射到公司控制器的显示操作。命名路由是可行的方法,还是可以使用资源路由?


人们可以将条件传递给资源路由以及命名路由。在一个应用程序中,我涉及的所有内容都仅限于一个帐户。 A :before_filter 使用子域加载帐户。因此,对于范围为帐户的资源,我们希望将路由范围限制为具有子域的 url。执行此操作的 DRY 方法是使用带有选项的映射:

  map.with_options :conditions => {:subdomain => /.+/} do |site|
    site.resources :user_sessions, :only => [:new, :create, :destroy]
    site.resources :users
    site.login 'login', :controller => "user_sessions", :action => "new"
    site.logout 'logout', :controller => "user_sessions", :action => "destroy"
    …
  end

  map.connect 'accounts/new/:plan', :controller => "accounts", :action => "new"
  map.resources :accounts, :only => [:new, :create]

正如您所看到的,命名路由也将接受带有子域的条件哈希。您还可以采用上面介绍的 Ryan 方法,或者您可以根据每个资源指定条件:

  map.resources :users, :conditions => {:subdomain => /.+/}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails:将子域路由到资源 的相关文章

随机推荐

  • Android Content Provider 的实例化顺序

    对于我的应用程序 我需要先启动一个内容提供程序 据我所知 该顺序与 AndroidManifest 中的顺序无关 并且不是按字母顺序排列的 如何控制 Android 调用 Content Provider 的 onCreate 方法的顺序
  • 如何使用 Open XML SDK 将文本插入内容控件

    我正在尝试开发一种解决方案 该解决方案从 ASP Net 网页获取输入并将输入值嵌入到 MS Word 文档中的相应内容控件中 MS Word 文档还具有静态数据 以及一些要嵌入到页眉和页脚字段中的动态数据 这里的想法是解决方案应该基于 W
  • Bamboo 能否将 HTTP 400 Bad 请求解释为失败

    我们正在使用 CURL 向我们的应用程序之一发出外部 API 请求 如果该请求返回的值不是 200 我们希望ebamboo 的 构建 失败 目前 它正在过去 此外 响应中的消息中包含 错误 一词 我希望 Bamboo 能够解析脚本结果并根据
  • 为什么添加文本会改变 div 的边距[重复]

    这个问题在这里已经有答案了 我不明白为什么添加文本 do a div 似乎会改变浏览器解析 div 的方式 看起来边距顶部已更改 但事实并非如此 HTML div div class nav left left div div class
  • Mongo - 更新嵌套数组中的元素[重复]

    这个问题在这里已经有答案了 我有一个看起来像的文档 id 123xyz profile emails address email protected cdn cgi l email protection primary true addre
  • 在 HTML 中呈现字符串并保留空格和换行符

    我有一个带有详细信息页面的 MVC3 应用程序 作为其中的一部分 我有一个包含空格和换行符的描述 从数据库检索 当它被渲染时 新行和空格将被 html 忽略 我想对这些空格和新行进行编码 以便它们不会被忽略 你是怎样做的 我尝试了 HTML
  • NodeJS - 大量请求关闭后“套接字挂起”

    我已经被这个 套接字挂断 错误困扰了几天 我希望有人可以帮助我 我目前设置了两个 Node 程序 Node 中的 HTTP 服务器对每个节点都使用相同的数据进行响应 要求 HTTP 服务器响应来自 HTTP 服务器 1 的数据 对于每个请求
  • 为什么当某些内容已加载时 jQuery 会丢失“事件”(点击)?

    当我在侧边栏上选择页面时 我尝试使用下一个脚本加载内容 该脚本运行没有问题 if Modernizr history var newHash wrapperTag main content contentTag main content i
  • JPA/Hibernate:我可以有一个没有注释的父级和一个带有注释的子级吗?

    我需要创建一个可以独立使用或在更大的应用程序中使用的组件 独立使用时 它不需要数据库 也不需要任何数据库 ORM 相关的依赖项 当用作较大应用程序的一部分时 某些类确实会通过 JPA Hibernate 持久保存到数据库中 我认为组件中的域
  • 是否可以在Windows CE 5.0浏览器中查看部署在IIS 6.0上的silverlight或asp.net 3.5网站?

    我计划在 silverlight 中构建一个网站并将其部署在 IIS 6 0 上 我不知道 是否可以在Windows CE 5 0浏览器中浏览该应用程序 如果不可能的话 查看 silverlight 应用程序比查看 asp net 3 5
  • 使用 haskell Pipes-bytestring 按行迭代文件

    我正在使用管道库 需要将 ByteString 流转换为行流 即String 使用 ASCII 编码 我知道还有其他库 Pipes Text 和 Pipes Prelude 也许可以让我更轻松地从文本文件中生成行 但是由于其他一些代码 我需
  • Python GUI 在整个过程完成之前不会更新

    我有一个进程从目录中获取文件并将它们放入列表中 然后它循环迭代该列表 循环的最后一行是它应该更新我的 gui 显示的位置 然后它再次从列表中的下一项开始循环 我的问题是 在整个过程完成之前 它实际上不会更新 gui 这取决于列表的大小 可能
  • 在 slickgrid 上调用排序

    在 slickgrid 中 我可以使用以下命令设置排序列及其排序方向grid SetSortColumn colName true false 这仅设置排序字形 但不进行排序 有没有办法调用排序事件处理程序 我已经定义了排序处理程序 例如g
  • 析构函数应该是线程安全的吗?

    我正在查看遗留代码并发现以下片段 MyClass MyClass EnterCriticalSection cs Access Data Members NO Global members are being accessed here L
  • 在 .net 中,如何在 Decimal 和 Double 之间进行选择

    前几天我们在工作中讨论了这个问题 我希望有一个 Stackoverflow 问题我可以向人们指出 所以就在这里 和有什么区别Double http msdn microsoft com en us library x99xtshc VS 7
  • Rails 3 - RMagick 使用 Paperclip 找不到 libfreetype.6.dylib

    我正在尝试使用回形针上传一些图像 它工作正常 但如果我想添加一些样式 styles gt small gt 100x100 它不再工作了 我收到此错误消息 myImage 识别 命令无法识别 所以 我在网上找到了一些提示 我用 Brew 安
  • scala 控制台错误:对象 apache 不是包组织的成员

    我正在尝试这里建议的代码 http spark apache org docs 1 2 1 mllib ensembles html classification http spark apache org docs 1 2 1 mllib
  • protobuf net 是否支持列表/数组内共享引用的对象图?

    看来 protobuf net 不支持列表 数组的 AsReference 以及列表 数组内对象的 AsReference 最终 v2 会支持此功能吗 ProtoMember 1 AsReference true DynamicType t
  • AngularJS $watch 函数如何工作?

    我现在读了很多关于 AngularJS 的文章 并且遇到了神奇的 watch 函数 我知道如何使用它 但我想知道它在后台是如何实现的 是时间间隔函数吗 或者是 Angular 会在执行的每个语句中调用此监视 我现在不想深入研究源代码 如果你
  • Rails:将子域路由到资源

    是否可以将子域映射到资源 我有一个公司模型 目前 使用 subdomain fu 我的路由文件包含 map company root controller gt companies action gt show conditions gt