0

我正在使用 Ruby mine 来构建一个 ruby​​ on rails 应用程序。一切正常。我创建新项目,然后按 Ctrl+Alt+G。从生成器选项中,我选择控制器。然后我得到一个窗口,我必须在其中命名控制器和操作。当我选择不同的动作时,相应的函数会在以我的动作命名的控制器中创建。如果我按下该函数名称左侧的图标,我会为具有扩展名.html.erb 的特定函数打开一个视图文件。这很好。但是如果我忘记在控制器对话框中添加一个或多个操作怎么办。然后据说我必须添加一个名称是我想要的视图的函数。IE

def functionname

end

现在,当我单击此函数名的左侧时。我可以选择创建扩展名为 .html.erb 的文件。所有这些工作正常。但是当我构建这个应用程序并尝试访问这个新创建的视图时,我得到了以下错误`

    Routing Error
No route matches [GET] "/say_hello/sona"
Try running rake routes for more information on available routes.

除了使用该控制器向导之外,我如何向控制器添加视图?我不能在之后添加视图吗?`

4

1 回答 1

6

我不知道该向导,但要访问您需要的应​​用程序中的 URL:

路线

在 中定义config/routes.rb,在您的情况下:

get 'say_hello/sona', to: 'your_controller#your_action'

控制器

定义于app/controllers/your_controller.rb

class YourController < ApplicationController
  def your_action
  end
end

模板或视图

在 中定义app/views/your_controller/your_action.html.erb,您可以将此文件留空,但必须创建它。

于 2013-07-22T04:53:19.223 回答