Определения маршрутов в основном для «чистых URL-адресов», поскольку они соответствуют пути запроса (без строки запроса).
Имея это в виду, вы можете определить свой маршрут следующим образом
get("item/:id/:action", ActionController, :index_by)
#Or
get("/items", ActionController, :index_by)
Первое определение маршрута будет захватывать id
и action
из пути запроса, например, GET / items / 1 / edit даст вам %{"id"=>1, "action"=>"edit"}
в ваших параметрах.
Второе захватит id
и action
из строки запроса.например, GET "/items?id=1&action=delete"
даст вам %{"id"=>1, "action"=>"delete"}
в ваших параметрах
Обратите внимание, что определение второго маршрута, в отличие от первого, не требует наличия либо id
, либо action
в строке запроса, поэтомувам не гарантируется, что эти параметры будут доступны в ваших параметрах.