get '/post/:id', to: 'posts#show'
resorces Generieren Sie einen einfallsreichen Satz von Routen. (7 Aktionen)
resources :posts
Option --param
Segment: id kann mit der Option param in einen beliebigen Wert geändert werden.
resources :posts, param: :no
#=> /books/:no
--nur außer Option
Sie können das Routing auf bestimmte Aktionen beschränken oder bestimmte Aktionen vom Routing ausschließen.
resources :posts, only: [:show]
resources :posts, except: [:show]
Die Sammlung wird für das Routing verwendet, für das keine ID erforderlich ist, und das Mitglied wird für das Routing verwendet, für das keine ID erforderlich ist.
resources :posts, only:[] do
collection do
get :post_lndex , to: 'posts#post_index'
end
member do
get :post_edit , to: 'posts#post_edit'
end
end
resource
Wird verwendet, wenn einzelne Ressourcen verwendet werden (Ressourcen, für die keine ID-Referenz erforderlich ist). (Außer Indexaktion)
resource :user
root Generieren Sie Routing für Anwendungsrouten.
root 'welcome#index'
HttpHelpers Hilfsmethoden typischer HTTP-Methoden sind definiert.
Mit match können Sie die Option via verwenden, um Routen für mehrere HTTP-Methoden zu generieren.
match '/posts/:id', to: 'posts#update', as: 'post', via: [:put, :patch]
#=> PUT|PATCH /posts/:id(.:format) posts#update
Wenn die Ankeroption auf false gesetzt ist, gilt sie für alle Anforderungen, die der Ressource entsprechen, beginnend mit path.
match 'posts', to: 'posts#index', anchor: false, via: :get
scope Sie können verschiedene Bereiche erstellen und Routing-Einstellungen beschreiben.
scope '/posts' do
get ':id', to: 'posts#show'
end
#=> GET /books/:id(.:format) posts#show
Verwenden Sie den Controller, der durch die Controller-Option im Bereich angegeben wird.
scope '/posts', controller: :posts do
get '/', to: :index
post '/', to: :create
end
#=> GET /posts(.:format) posts#index
#=> POST /posts(.:format) posts#create
Verwenden Sie die durch die Aktionsoption im Bereich angegebene Aktion.
scope '/posts/:id', controller: :posts, action: :update do
match '/', via: [:put, :patch]
end
#=> PUT|PATCH /posts/:id(.:format) posts#update
Verwenden Sie das durch die Moduloption im Bereich angegebene Modul.
scope '/admin', module: :admin, as: :admin do
get '/', to: 'admin#index'
end
#=> GET /admin(.:format) admin/admin#index
Der Name des Namespace wird am Anfang des Routings hinzugefügt.
namespace :admin, as: 'admin' do
# do something
end
Grundlegendes zum Rails-Routing
Recommended Posts