升级到Rails 3:路由问题

时间:2011-05-14 20:13:24

标签: ruby-on-rails ruby ruby-on-rails-3 routes

升级我的routes.rb文件时遇到问题。

我转换了这条路线:

 map.resource :index,    :controller => "users", :action => "index"

通过

resource :index, :to => "users#index" 

没有引发错误,但页面显示不正确。 有没有人有想法?

更新

我有这个指示:

resources :users

这是我的routes.rb文件:

JNetExams::Application.routes.draw do |map|
    match 'login', :to => 'user_sessions#new', :as => 'login'
    match 'logout', :to => 'user_sessions#destroy', :as => 'logout'
    root :to => 'user_sessions#new'

    resources :groups
    resources :students
    resources :users
    resources :responses

    #map.resource :index,    :controller => "users", :action => "index"
    resource :index, :to => "users#index"
    map.resource :account,  :controller => "users"
    #resource :account, :controller => "users"
    resource :user_session
    resource :student
    resource :user
    map.resource :professor, :controller => "professors", :action => "index"
    #resource :professor, :to => "professors#index"

    map.connect ':controller/:action/:id'
    #match ':controller/:action/:id'
    map.connect ':controller/:action/:id.:format'
    #match ':controller/:action/:id.:format'

    #map.connect '*url', :controller => :users, :action => :index
    match '*url', :to => "users#index"

    #map.connect '/user_sessions/show', :controller => "user_sessions", :action => "show"
    match '/user_sessions/show', :to => "user_sessions#show"

如何将此路由文件升级到Rails 3?

2 个答案:

答案 0 :(得分:2)

resources :index提供索引资源的路径。因此new_index_path会指向new中的IndexController操作。如果您没有索引资源,则不应使用资源来定义"users#index"的路径。此路径已作为users_pathresources :users提供给您。如果您要为应用程序设置索引页,可以使用root :to => "users#index"

来实现

无法正确显示的问题是模糊的,我雇用你来更多地了解它。毕竟我们在这里提供帮助。

答案 1 :(得分:1)

你有一个名为index的资源吗?

这看起来更应该是

resources :users

如果您需要更多帮助,请显示整个路线文件。

相关问题