在Rails中设置Controller的默认页面

时间:2016-09-02 07:32:11

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 controller

在rails中如何设置控制器的默认页面。在我的应用程序中,我有一个名为“greet”的控制器,它有两个动作“欢迎” 和“愿望”。因此,在调用像“localhost:3000 / greet / welcome”这样的欢迎页面时,可以正常工作。

但我的要求是如果我没有 给出该控制器的动作名称,如“localhost:3000 / greet”,然后它只接受与该控制器关联的默认页面。这该怎么做 在轨道4.2。我试图在greet控制器中进行索引操作。但它没有用。任何人都可以帮我解决这个问题吗?

4 个答案:

答案 0 :(得分:1)

routes.rb 中的

添加行:

get '/greet' => 'greet#welcome'

您还必须在文件夹view中创建文件夹greet,并且在此文件夹中您必须创建文件welcome.html.erb

答案 1 :(得分:1)

试试这个。

$(document).ready(function(){
    $(window).resize(function(){
        heading.style.color = "red";
    });
});

答案 2 :(得分:1)

Rails使用REST概念。因此,根据这一点,当您致电localhost:3000/greet时,它会搜索greet#index方法。好吧,如果你想在使用localhost:3000/greet时看到任何自定义方法,你需要写入文件 config / routes.rb ,如:

Rails.application.routes.draw do
  get 'greet', :to => 'greet#welcome', :as => :greet
end

希望这会有所帮助。

答案 3 :(得分:1)

Rails.application.routes.draw do
  resource :greet, controller: 'greet' do
    get 'welcome'
    get 'wishes'

    #Default resource routing
    get '/', to: 'greet#welcome'
  end
end