class ActionController::Parents
To be included in a controller.
Creates a ‘parent_resource` method, which will call `find` using an id found in the params hash.
@example Organization and Group as parents
class MembersController < ActionController::Base include ActionController::Parents.new(Organization, Group) def index @members = parent_resource.members end end
@!method parent_resource()
Fetches the parent resource. @return [ActiveRecord::Base, nil] The result or `nil` if no matching key has been found. @raise [ActiveRecord::RecordNotFound] When a parent resource key is present, but no parent resource is found for it.
Constants
- NoFindMethodError
- VERSION
Public Class Methods
new(*resource_classes)
click to toggle source
# File lib/action_controller/parents.rb, line 31 def initialize(*resource_classes) finder = Finder.new(resource_classes) define_method :parent_resource do @parent_resource ||= finder.parent_resource(params) end end