[update: by not using 100, just to understand Rails console a little more]
在rails 3的"rails控制台"中,我们可以使用controller
,但在rails 2.2或2.3中,我们需要使用@controller
在Rails 3中,我们可以打印出Rails routing为脚手架foo
添加的所有路由:
ruby-1.9.2-p0 > puts controller.public_methods.grep(/path|url/).grep(/foo/).sort.join("\n")
edit_foo_path
edit_foo_url
foo_path
foo_url
foos_path
foos_url
new_foo_path
new_foo_url
但是在Rails 2.3.8上,它给出了formatted_foos_path
个,等等,而Rails 2.2.2没有给出任何结果.如何将Rails 2.3.8和2.2.2打印出来?
Rails 2.3.8的详细信息:
ruby-1.8.7-p302 > puts @controller.public_methods.grep(/path|url/).grep(/foo/).sort.join("\n")
formatted_edit_foo_path
formatted_edit_foo_url
formatted_foo_path
formatted_foo_url
formatted_foos_path
formatted_foos_url
formatted_new_foo_path
formatted_new_foo_url