如何手动(而不是通过控制器向导)向rails应用程序中的ruby中的控制器添加视图?

Ann*_*mer 0 ruby-on-rails rubymine rails-routing

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

def functionname

end
Run Code Online (Sandbox Code Playgroud)

现在当我点击这个功能名的左侧时.我可以选择创建扩展名为.html.erb的文件.所有这一切都很好.但是,当我构建此应用程序并尝试访问此新创建的视图时,我收到以下错误

    Routing Error
No route matches [GET] "/say_hello/sona"
Try running rake routes for more information on available routes.
Run Code Online (Sandbox Code Playgroud)

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

jua*_*tas 6

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

路线

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

get 'say_hello/sona', to: 'your_controller#your_action'
Run Code Online (Sandbox Code Playgroud)

调节器

定义于 app/controllers/your_controller.rb

class YourController < ApplicationController
  def your_action
  end
end
Run Code Online (Sandbox Code Playgroud)

模板或视图

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