首先,我使用Rails第三版Book进行了Agile Web开发。但是我希望能够创建应用程序的管理部分。有一个学位,我有以下内容:
Controller Admin
登录,退出,索引
控制器产品
我想在管理控制器中创建一个控制产品的部分。 我试过在网上四处看看并在系统上玩游戏。但我对此问题感到困惑。
我尝试在Admin / Views文件夹中创建Products页面。这允许我查看以下产品:// localhost / admin / products。这很棒但是如果我想编辑和创建产品我想// localhost / admin / products /:id / edit等和编辑等只能在admin URl中发生。
使用Rails 2.0.2
提前致谢
答案 0 :(得分:6)
你真的想要使用更高版本的Rails而不是2.0.2如果能够 - 2.3.14是v2中的最新版本而v3.1.0实际上是很久以前出现的。
要回答您的问题,您希望查看路由命名空间,它允许您在命名空间内将路由/资源组合在一起,例如admin。
namespace :admin do
root :to => 'admin#index' #Default route for when you got to /admin
resources :products
最后一条路由将在/ admin命名空间内为您的产品模型创建所有7条restful路由。您将需要一个名为app / controllers / admin / products_controller.rb的控制器,您将在app / views / admin / views / productions中获得索引,创建,更新...等方法和相应的视图
答案 1 :(得分:0)
您可以使用命名空间。在您的routes.rb中:
map.namespace(:admin) do |admin|
admin.resources :products
end
然后,生成管理员/产品控制器并与REST一起使用:
script/generate controller admin/products
admin_products_path
edit_admin_products_path(product.id)