Module: Pakyow::Routing::Extension::Resource

Extended by:
Support::Extension
Defined in:
lib/pakyow/routing/extensions/resource.rb

Overview

An extension for defining RESTful Resources. For example:

resource :posts, "/posts" do
list do
  # list the posts
end
end

Resource is available in all controllers by default.

Supported Actions

These actions are supported:

  • list -- GET /
  • new -- GET /new
  • create -- POST /
  • edit -- GET /:resource_id/edit
  • update -- PATCH /:resource_id
  • replace -- PUT /:resource_id
  • delete -- DELETE /:resource_id
  • show -- GET /:resource_id

Nested Resources

Resources can be nested. For example:

resource :posts, "/posts" do
resource :comments, "/comments" do
  list do
    # available at GET /posts/:post_id/comments
  end
end
end

Collection Routes

Routes can be defined for the collection. For example:

resource :posts, "/posts" do
collection do
  get "/foo" do
    # available at GET /posts/foo
  end
end
end

Member Routes

Routes can be defined as members. For example:

resource :posts, "/posts" do
member do
  get "/foo" do
    # available at GET /posts/:post_id/foo
  end
end
end

Defined Under Namespace

Modules: NestedResource

Constant Summary collapse

DEFAULT_PARAM =
:id