1

我正在使用 spree 遇到一个复杂的案例。我有一个基于组件的 rails 应用程序,带有 3 个 spree 引擎或扩展:

  1. my_core:包含 spree 和 auth_spree 模型 + 我自己的额外模型

  2. my_api:包含我的应用程序的 api(与 spree_api 完全不同)

  3. my_backend:这里我想安装 spree_backend 但使用 corse 的 my_core 模型。

有没有办法在没有模型的情况下安装 spree_backend?身份验证流程如何在内部工作?

在我的路线中,我有:

# config/routes.rb
Rails.application.routes.draw do
  constraints :subdomain => 'api' do
    mount MyAPI::Engine, at: "/"
  end
  constraints :subdomain => 'admin' do
    mount MyBackend::Engine, at: "/"
  end
end

# components/my_backend/config/routes.rb
MyBackend::Engine.routes.draw do
  root to: "spree/admin/orders#index"
  mount Spree::Core::Engine, :at => '/'
end

更新 19-06-2015

我终于可以通过修改引擎路由来午餐管理页面:

# components/my_backend/config/routes.rb
MyBackend::Engine.routes.draw do
  root to: "admin/orders#index"
  mount Spree::Core::Engine, :at => '/'
end

此外,我必须解决资产的许多问题。但仍然面临 spree.js.coffee.erb 文件中的路由问题

在此处输入图像描述

有什么我做错了吗?任何建议将不胜感激!!!

4

1 回答 1

0

如果有人需要,我解决了这个问题,方法是在我的引擎供应商目录中创建一个新文件 spree.js.coffee.erb 并将该类的方法 @mountedAt 覆盖为:

@mountedAt: ->
    "<%= MyBackend::Engine.routes.url_helpers.spree_path %>"
于 2015-06-29T08:32:01.603 回答