【发布时间】:2013-03-27 13:00:39
【问题描述】:
所以,我有一个命名路线:
match 'ip/get/:ip' => 'ip_addresses#show', :via => :get
如您所见,我希望 ip(在“get”之后)是动态的,但是当我尝试它时,我不断收到路由错误。这是我的路线:
root / ip_addresses#index
ip_add POST /ip/add(.:format) ip_addresses#create
GET /ip/add(.:format) ip_addresses#new
ip_all GET /ip/all(.:format) ip_addresses#index
GET /ip/get/:ip(.:format) ip_addresses#show
DELETE /ip/all(.:format) ip_addresses#destroy
这是我的show 操作:
def show
IpAddress.find(params[:id])
end
编辑:路由错误:
ActionController::RoutingError (No route matches [GET] "/ip/get/1.2.3.4"):
我已经阅读了 Rails Routing from the Outside In Guide (http://guides.rubyonrails.org/routing.html) 但我自然可能忽略了一些东西。任何帮助表示赞赏。谢谢!
【问题讨论】:
-
你能解释一下你想完成什么吗?查看代码和路线,我怀疑这是解决此问题的好方法。虽然这不是您回答的直接答案,但我可以建议更简洁的代码来做同样的事情。
-
你能分享你收到的错误吗?
-
Aleks,我同意这可能会更简洁,但我基本上完成了一个编码练习,请求命名为 RESTful 的路由,在 #show 的情况下为动态的。如果您对提供的代码有任何建议,请随时添加!
-
哦,好吧,如果是编码练习,那没关系;)这对练习很有好处:)
标签: ruby-on-rails ruby routing