【问题标题】:Cannot see Routes when mounting Rails 3 Engine安装 Rails 3 引擎时看不到路线
【发布时间】:2012-06-05 18:45:29
【问题描述】:

我创建了一个 Rails 引擎(根据 Rails Guides),使用:

rails plugin new address_book --full --mountable

我继续为名为 pages 的引擎创建一个控制器,使用单个操作(称为 temp)来显示单个视图,即 app/views/address_book/pages/temp.html.erb

引擎的 config/routes.rb 是:

AddressBook::Engine.routes.draw do
  match :temp, to: "pages#temp" 
end

在父应用程序中,我在 routes.rb 文件中添加了以下内容:

mount AddressBook::Engine => "/address_book", as: "address_book"

在父应用程序控制器之一的操作中,我对属于引擎的视图进行了以下调用:

redirect_to address_book.temp_path

现在,即使 rake routes 显示引擎的路径,当我尝试从浏览器执行操作时,我仍然收到错误:

undefined local variable or method `address_book'

对于redirect_to address_book.temp_path这一行

rake 路由的结果包含以下内容:

address_book        /address_book         AddressBook::Engine

Routes for AddressBook::Engine:
temp  /temp(.:format) address_book/pages#temp

我似乎无法理解我缺少什么,因此我们将不胜感激。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 routes ruby-on-rails-3.2 rails-engines


    【解决方案1】:

    经过长时间的反复试验(并关闭电脑过夜),我意识到我需要做的就是重新启动服务器

    希望这篇文章能帮助遇到同样绊脚石的人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多