class Trello::AssociationFetcher::HasOne::Params

Attributes

association_name[R]
association_options[R]
association_owner[R]

Public Class Methods

new(association_owner:, association_name:, association_options:) click to toggle source
# File lib/trello/association_fetcher/has_one/params.rb, line 7
def initialize(association_owner:, association_name:, association_options:)
  @association_owner = association_owner
  @association_name = association_name
  @association_options = association_options || {}
end

Public Instance Methods

association_class() click to toggle source
# File lib/trello/association_fetcher/has_one/params.rb, line 13
def association_class
  association_options[:via] || infer_class_on(association_name)
end
association_restful_id() click to toggle source
# File lib/trello/association_fetcher/has_one/params.rb, line 21
def association_restful_id
  id_field = association_options[:using] || :id
  association_owner.send(id_field)
end
association_restful_name() click to toggle source
# File lib/trello/association_fetcher/has_one/params.rb, line 17
def association_restful_name
  association_options[:path]
end

Private Instance Methods

infer_class_on(name) click to toggle source
# File lib/trello/association_fetcher/has_one/params.rb, line 30
def infer_class_on(name)
  AssociationInferTool.infer_class_on_name(name)
end