让控制器工作的一种简单方法是在路由中添加资源。这将映射所有控制器方法。
# app/controllers/controllernames_controller.rb
class ControllernamesController < ApplicationController
def index
end
# and other methods you want...
end
# config/routes.rb
MyApp::Application.routes.draw do
resources :controllername
end
你的链接会变成http://localhost/controllernames/methodname/id
然后在您的视图文件中,您可以通过以下方式添加链接:
<%= link_to "whatever_your_like_to_name", controllernames_path %>
如果您使用 Rails 提供的 RESTful 脚手架,您可以:
<%= link_to "whatever_your_like_to_name", new_controllername_path %>
# or
<%= link_to "whatever_your_like_to_name", edit_controllername_path(controllername) %>
# or
etc...
从控制器获取单个方法的另一种方法,您可以执行以下路由:
# config/routes.rb
MyApp::Application.routes.draw do
get 'controllernames/methodname', to: 'controllernames#methodname', as: "whatever_you_want"
end
在这种情况下,您在视图文件中的链接将是
<%= link_to "whatever_you_like_to_name", whatever_you_want_path %>