2012-04-10 6 views
0

Beim Generieren eines Controllers wird bei rails automatisch "get controller/action" an die routes.rb-Datei für jede der findigen Aktionen gesetzt (z. B. index, new, create, edit usw.). Was ist der Zweck dieses 'Get'? Da es in routes.rb ein 'resources' für das gleiche Modell gibt, können wir dieses 'get' loswerden? Wird das "Get" benötigt, um benutzerdefinierte Aktionen in routes.rb zu "putten"?Was nutzt 'get controller/action' in routes.rb in Rails 3.1?

Vielen Dank.

Antwort

1

Sie können diese Route sicher entfernen.

Die richtige Layout für die grundlegende Ressource Routing in Rails 3.1 folgendes Format:

resources :users do # Provides GET /users, /users/new, /users/:id, /users/:id/edit, POST /users, PUT /users/:id, DELETE /users/:id 
    # Additional routes which return collections (not CRUD) 
    collection do 
    get :search # /users/search 
    end 

    # Additional routes which return single models (not CRUD) 
    member do 
    put :add_friend # /users/:id/add_friend 
    end 
end 

Sie die vollständige Rails Routing-Guide hier lesen: http://guides.rubyonrails.org/routing.html

+0

Meinten Sie 'get' können 7 entfernt werden Standard RESTful Routen auch? Es scheint OK zu sein, es für findige benutzerdefinierte Routen zu löschen. – user938363

+0

Die standardmäßigen RESTful-Routen werden automatisch von der Zeile 'resources: users' behandelt. Sie können sie hier sehen: http://guides.rubyonrails.org/routing.html#crud-verbs-and-actions. –