【问题标题】:How do I create a new route path to my newly generated action?如何为新生成的操作创建新的路由路径?
【发布时间】:2014-08-22 09:02:09
【问题描述】:

我在 Posts 控制器中创建了一个新动作,但是,我似乎无法访问它。

动作名称是 'kill' ,所以当我在浏览器中输入时,localhost:3000/posts/kill

我收到以下错误:Couldn't find Pad with id=kill

Extracted source (around line #18
def show
    @post_selected = Post.find(params[:id])
    @posts = Post.all
  end

在我的 routes.rb 中

resources :posts

match ':controller(:action(/:id))', :via => [:get, :post]
match "/pads/modifier" => "pads#modifier", :via => [:get]

当我输入 rake routes 时,这就是我得到的结果

Prefix Verb     URI Pattern                           Controller#Ac
         posts GET      /posts(.:format)                       posts#index
              POST     /posts(.:format)                       posts#create
      new_post GET      /posts/new(.:format)                   posts#new
     edit_post GET      /posts/:id/edit(.:format)              posts#edit
          post GET      /posts/:id(.:format)                   posts#show
              PATCH    /posts/:id(.:format)                   posts#update
              PUT      /posts/:id(.:format)                   posts#update
              DELETE   /posts/:id(.:format)                   posts#destroy
         root GET      /                                     posts#welcome
              GET|POST /:controller(:action(/:id))(.:format) :controller#:

posts_modifier GET      /posts/modifier(.:format)              posts#modifier

如何生成路径以获取新创建的操作“kill”?

============================================= ============== 更新 #1:已解决,

除了下面的答案,我可以用下面的代码实现它

resources :posts, controller: 'posts' do 
get 'posts/:action', to: 'posts#:action'
  end

============================================= ===============

【问题讨论】:

    标签: ruby-on-rails controller routes action


    【解决方案1】:

    get 'posts/kill', to: 'posts#kill'

    【讨论】:

    • 有没有办法让它通用,这样我就不会在每个新创建的动作中重复自己?
    • 你应该尽量保持平静。如果不做一些骇人听闻的事情,就我所知,您无法匹配 * 特定操作的路径。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多