Module: NitroRails::SequentialRoutes
- Defined in:
- app/lib/nitro_rails/sequential_routes.rb
Instance Method Summary collapse
- #sequence(domain, sequence_name, steps:) ⇒ Object
- #sequence_collection_route(domain, sequence_name) ⇒ Object
- #sequence_controller(domain, sequence_name) ⇒ Object
- #sequence_helper(domain, sequence_name) ⇒ Object
- #sequence_individual_route(domain, sequence_name) ⇒ Object
Instance Method Details
#sequence(domain, sequence_name, steps:) ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'app/lib/nitro_rails/sequential_routes.rb', line 2 def sequence(domain, sequence_name, steps:) controller = "#{domain}/#{sequence_name}_sequence" collection_route = "#{domain}/#{sequence_name}" individual_route = "#{domain}/:id/#{sequence_name}" helper = "#{domain}_#{sequence_name}_sequence" get collection_route, to: "#{controller}#start", as: helper get "#{individual_route}/finish", to: "#{controller}#finish", as: "#{helper}_finish" # get "#{individual_route}/:step", to: "#{controller}#step", as: "#{helper}_step" # steps.each do |step| get "#{individual_route}/#{step}", to: "#{controller}##{step}", as: "#{helper}_#{step}" get "#{collection_route}/#{step}", to: "#{controller}##{step}", as: "new_#{helper}_#{step}" patch "#{individual_route}/#{step}", to: "#{controller}##{step}!", as: "post_#{helper}_#{step}" post "#{collection_route}/#{step}", to: "#{controller}##{step}!", as: "create_#{helper}_#{step}" post "#{individual_route}/#{step}", to: "#{controller}##{step}!", as: "create_items_#{helper}_#{step}" end end |
#sequence_collection_route(domain, sequence_name) ⇒ Object
25 26 27 |
# File 'app/lib/nitro_rails/sequential_routes.rb', line 25 def sequence_collection_route(domain, sequence_name) "#{domain}/#{sequence_name}" end |
#sequence_controller(domain, sequence_name) ⇒ Object
21 22 23 |
# File 'app/lib/nitro_rails/sequential_routes.rb', line 21 def sequence_controller(domain, sequence_name) "sequences/#{domain}_#{sequence_name}" end |
#sequence_helper(domain, sequence_name) ⇒ Object
33 34 35 |
# File 'app/lib/nitro_rails/sequential_routes.rb', line 33 def sequence_helper(domain, sequence_name) "#{domain}_#{sequence_name}_sequence" end |
#sequence_individual_route(domain, sequence_name) ⇒ Object
29 30 31 |
# File 'app/lib/nitro_rails/sequential_routes.rb', line 29 def sequence_individual_route(domain, sequence_name) "#{domain}/:id/#{sequence_name}" end |