I Rails giver en ressourcestærk rute mulighed for at mappe HTTP-verber og URL’er med controllerhandlinger. Som en konvention er hver handling også et map til bestemte CRUD-operationer i en database. En enkelt indtastning i routing-filen, f.eks.
resources :photos
skaber syv forskellige ruter i din applikation, som alle mapper til controllerPhotos:
GET /photosGET /photos/newPOST /photosGET /photos/:idGET /photos/:id/editPATCH/PUT /photos/:idDELETE /photos/:id
Ressourcer kan også indlejres uendeligt ved hjælp af denne bloksyntaks:
resources :photos do resources :commentsend
Dette genererer følgende kommentarer ruter:
Options
Har de samme indstillinger som Base#match samt:
:path_names
Giver dig mulighed for at ændre segmentkomponenten for redigerings- og newaktioner. Handlinger, der ikke er angivet, ændres ikke.
resources :posts, path_names: { new: "brand_new" }
Overstående eksempel ændrer nu /posts/new til /posts/brand_new
:path
Giver mulighed for at ændre stipræfikset for ressourcen.
resources :posts, path: 'postings'
Ressourcenog alle segmenter vil nu rute til /postings i stedet for /posts
:only
Genererer kun ruter for de angivne handlinger.
resources :cows, only: :showresources :cows, only:
:undtagen
Genererer alle ruter undtagen for de givne handlinger.
resources :cows, except: :showresources :cows, except:
:shallow
Genererer overfladiske ruter for indlejrede ressourcer.Når den er placeret på en overordnet ressource, genereres der overfladiske ruter for alle indlejrede ressourcer.
resources :posts, shallow: true do resources :commentsend
Er det samme som:
Dette gør det muligt at forkorte URL’er for ressourcer, der ellers ville være dybt indlejret, f.eks. en kommentar til et blogindlæg som/posts/a-long-permalink/comments/1234, til blot/comments/1234.
:shallow_path
Forudskriver indlejrede shallowroutes med den angivne sti.
scope shallow_path: "sekret" do resources :posts do resources :comments, shallow: true endend
Der vil blive genereret følgende ruter for ressourcen commentsher:
:shallow_prefix
Prefixerer indlejrede shallowroutenavne med angivet præfiks.
scope shallow_prefix: "sekret" do resources :posts do resources :comments, shallow: true endend
Der vil blive genereret følgende ruter for ressourcen commentsher:
:format
Giver dig mulighed for at angive standardværdien for det valgfrie formatsegment eller deaktivere det ved at angive false.