Rails路由提供文件未找到错误

时间:2015-02-25 15:10:44

标签: ruby-on-rails

我有一个Ruby on Rails应用程序,在routes.rb中有以下条目:

  get '/teachers/welcome', to: 'teachers#welcome'

这意味着如果我输入:http://localhost:3000/teachers/welcome,那么我应该可以从教师控制器中看到欢迎视图。但我一直收到File Not Found错误。我是Ruby的新手,所以请耐心等待。

当我查看应用程序时,文件就在那里:

应用程序/控制器/ teachers_controller.rb

应用程序/视图/教师/ welcome.html.erb

4 个答案:

答案 0 :(得分:1)

请注意模型的命名(没有s)但是你的控制器有s ..和视图名称必须与动作名称相匹配。并运行rake路线检查你的工作路线。 +注意routes.rb文件中的路线顺序..并且在你的生活中不会有任何问题与路线

答案 1 :(得分:0)

假设你有一个方法(行动),欢迎'在你的控制器中试试这个

get 'teachers/welcome' => 'teachers#welcome'

答案 2 :(得分:0)

确保所有内容都正确命名,例如控制器和视图。

应用程序/控制器/ teachers_controller.rb

class TeachersController < ApplicationController
  def welcome
  end
end

应用程序/视图/教师/ welcome.html.erb

答案 3 :(得分:0)

您必须删除第一个斜杠

get 'teachers/welcome' => 'teachers#welcome'

你的控制器:

# app/controllers/teachers_controller.rb
class TeachersController < ApplicationController
  def welcome
  end
end

注意:您可以使用生成器自动创建它:

rails generate controller teachers welcome