首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在子域Rails 3.1上挂载引擎

在子域Rails 3.1上挂载引擎
EN

Stack Overflow用户
提问于 2012-02-15 20:23:40
回答 2查看 3.5K关注 0票数 8

我正在用可安装的引擎做一些实验。首先,我需要你对一个场景的看法,我们把应用程序中的“大模块块”作为“可安装的引擎”,这是一个好主意吗?

我试过了,它工作得很好,在可安装的引擎中,我们可以全局访问应用的模型,在应用中,我们可以访问带有模块前缀的引擎模型。所以它对我来说很有效。

现在来看最初的问题:

我想挂载一个引擎到一个子域,这样每个具有特定子域的请求都应该由该特定引擎提供服务。我用了这段代码。

代码语言:javascript
复制
root :to=>'dashboard#index'
scope :subdomain => 'admin' do
    mount MyAdmin::Engine => '/'
end

在本例中,mydomain.comadmin.mydomain.com转到了dashboard controller。如果我像这样更改首选项

代码语言:javascript
复制
scope :subdomain => 'admin' do
    mount MyAdmin::Engine => '/'
end
root :to=>'dashboard#index'

在本例中,mydomain.comadmin.mydomain.com转到了engine specific root controller

如何完成此场景,并在特定子域上挂载引擎?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-16 19:07:10

我使用以下路由条目来完成此任务:

代码语言:javascript
复制
scope :subdomain => 'www' do
   root :to=>'dashboard#index'
end
scope :subdomain => 'admin' do
    mount MyAdmin::Engine => '/'
end
票数 12
EN

Stack Overflow用户

发布于 2013-05-03 06:43:16

在使用Rails 3.2.12和ruby 1.9.3-194的时候,我找到了一个不同的解决方案,它也可以在本地工作,以避免www。子域问题,同时允许在某个子域中有引擎。

代码语言:javascript
复制
get "home/index"

constraints :subdomain => 'store' do
    mount Spree::Core::Engine, :at => '/'
end

root :to => 'home#index'

我可能完全错了,但到目前为止,它是有效的。

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

https://stackoverflow.com/questions/9293310

复制
相关文章

相似问题

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