Sha256: fd1062f094b4bebae1505d29004bc0711239a84b3713df92804225ea423f755e

Contents?: true

Size: 805 Bytes

Versions: 4

Compression:

Stored size: 805 Bytes

Contents

# JoinDependency [![Build Status](https://travis-ci.org/rzane/join_dependency.svg?branch=master)](https://travis-ci.org/rzane/join_dependency)

This is a module with a singular purpose. It creates an `ActiveRecord::Associations::JoinDependency` from an `ActiveRecord::Relation`. That's it.

```ruby
require 'join_dependency'

relation = Post.joins(:author)
JoinDependency.from_relation(relation)
```

And, in case you're trying to bend Active Record to your will, you can choose how certain joins get categorized:

```ruby
JoinDependency.from_relation(relation) do |join|
  case join
  when Polyamorous::InnerJoin, Polyamorous::OuterJoin
    :stashed_association_join
  end
end
```

This library isn't meant for people. It's a library for libraries on top of other libraries that interact with libraries.

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
join_dependency-0.1.4 README.md
join_dependency-0.1.3 README.md
join_dependency-0.1.2 README.md
join_dependency-0.1.1 README.md