【发布时间】:2015-10-30 03:19:03
【问题描述】:
我有一个使用 shopify_app 引擎的沙盒应用程序。在最新版本的 shopify_app gem 中删除了路由,导致以下错误:
rake aborted!
remote: NoMethodError: undefined method `routes=' for #<ShopifyApp::Configuration:0x007fcab708e448>
remote: /tmp/build_5d0f45fef6ff96f0e7e2e5cebd603067/config/initializers/shopify_app_initializer.rb:6:in `block in <top (required)>'
remote: /tmp/build_5d0f45fef6ff96f0e7e2e5cebd603067/vendor/bundle/ruby/2.1.0/gems/shopify_app-6.2.1/lib/shopify_app/configuration.rb:31:in `configure'
remote: /tmp/build_5d0f45fef6ff96f0e7e2e5cebd603067/config/initializers/shopify_app_initializer.rb:1:in `<top (required)>'
所以我试图在我的应用程序路由文件中安装引擎。
这是我在第 2 行中添加的 rails mount 行,但是 NoMethodError 在安装 ShopifyApp Engine 后没有改变。我不了解根本问题或如何解决它。
MyApp::Application.routes.draw do
mount ShopifyApp::Engine => '/', as: 'shopify_app'
controller :sessions do
get 'login' => :new, :as => :login
post 'login' => :create, :as => :authenticate
get 'auth/shopify/callback' => :callback
get 'logout' => :destroy, :as => :logout
end
get 'modal' => "home#modal", :as => :modal
get 'modal_buttons' => "home#modal_buttons", :as => :modal_buttons
get 'regular_app_page' => "home#regular_app_page"
get 'help' => "home#help"
get 'pagination' => "home#pagination"
get 'breadcrumbs' => "home#breadcrumbs"
get 'buttons' => "home#buttons"
get 'form_page' => "home#form_page"
post 'form_page' => "home#form_page"
get 'error' => 'home#error'
root :to => 'home#index'
end
有人可以指出我正确的方向吗?我想预编译正在中断 .routes 调用,但我需要帮助来实现下一个飞跃
ShopifyApp::Engine.routes.draw do
https://github.com/Shopify/shopify_app/blob/master/config/routes.rb
【问题讨论】:
-
请发帖
config/initializers/shopify_app_initializer.rb -
感谢 Antarr,该文件的存在对我来说是缺失的部分。我根据来自 shopify_app 贡献者之一的 Kevin 的指示删除了 config.routes = true 行并修复了它。
标签: ruby-on-rails nomethoderror