lib/graphql/sugar/define/relationship.rb in graphql-sugar-0.1.3 vs lib/graphql/sugar/define/relationship.rb in graphql-sugar-0.1.4

- old
+ new

@@ -8,11 +8,12 @@ association = model_class.reflect_on_association(association_name) if association.association_class == ActiveRecord::Associations::BelongsToAssociation define_belongs_to(type_defn, field_name, model_class, association_name, association) elsif association.association_class == ActiveRecord::Associations::HasOneAssociation || - association.association_class == ActiveRecord::Associations::HasManyAssociation + association.association_class == ActiveRecord::Associations::HasManyAssociation || + association.association_class == ActiveRecord::Associations::HasManyThroughAssociation define_has_one_or_many(type_defn, field_name, model_class, association_name, association) end end def self.define_belongs_to(type_defn, field_name, model_class, association_name, association) @@ -38,10 +39,11 @@ def self.define_has_one_or_many(type_defn, field_name, _model_class, association_name, association) kwargs = {} kwargs[:type] = "Types::#{association.klass}Type".constantize - if association.association_class == ActiveRecord::Associations::HasManyAssociation + if association.association_class == ActiveRecord::Associations::HasManyAssociation || + association.association_class == ActiveRecord::Associations::HasManyThroughAssociation kwargs[:type] = kwargs[:type].to_non_null_type.to_list_type end begin function_class = Sugar.get_resolver_function(field_name)