Em Rails, uma rota cheia de recursos fornece um mapeamento entre os verbos HTTP e URLs e as ações do controlador. Por convenção, cada ação também mapeia para operações CRUD particulares em um banco de dados. Uma única entrada no arquivo de roteamento, como
resources :photos
cria sete rotas diferentes em sua aplicação, todos mapeando para o controllerPhotos:
GET /photosGET /photos/newPOST /photosGET /photos/:idGET /photos/:id/editPATCH/PUT /photos/:idDELETE /photos/:id
Recursos também podem ser aninhados infinitamente usando esta sintaxe de bloco:
resources :photos do resources :commentsend
Gera as seguintes rotas de comentários:
Opções
Toma as mesmas opções que Base#match assim como:
:path_names
Permite alterar o componente de segmento da edição e das novas ações. As ações não especificadas não são alteradas.
resources :posts, path_names: { new: "brand_new" }
O exemplo acima agora mudará /postos/novo para /postos/brand_new
:path
Permite alterar o prefixo do caminho para o recurso.
resources :posts, path: 'postings'
O recurso e todos os segmentos serão agora encaminhados para /postos em vez de /postos
:apenas
Gera apenas rotas para as ações dadas.
resources :cows, only: :showresources :cows, only:
:excepto
Gerar todas as rotas excepto para as acções dadas.
resources :cows, except: :showresources :cows, except:
:rasa
Gerar rotas rasas para o(s) recurso(s) aninhado(s).Quando colocado em um recurso pai, gera rotas rasas para todos os recursos aninhados.
resources :posts, shallow: true do resources :commentsend
É o mesmo que:
Permite que URLs para recursos que de outra forma seriam profundamente aninhados, como um comentário em um post de blog como/posts/uma ligação/permalink/comentários/1234 sejam encurtados para just/comments/1234.
:caminho_planado
Prefixos de caminhos rasos aninhados com o caminho especificado.
scope shallow_path: "sekret" do resources :posts do resources :comments, shallow: true endend
O recurso de comentários em nenhum lugar terá os seguintes caminhos gerados para ele:
:rasa_prefixo
Prefixos aninhados nomes de rotas rasas com o prefixo especificado.
scope shallow_prefix: "sekret" do resources :posts do resources :comments, shallow: true endend
Os comentários resourcehere terão as seguintes rotas geradas para ele:
:formato
Permite especificar o valor padrão para o segmento de formato opcional ou desabilitá-lo fornecendo false.