auto_set 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.coveralls.yml +1 -0
- data/.gitignore +35 -0
- data/.rspec +3 -0
- data/.travis.yml +15 -0
- data/Gemfile +4 -0
- data/Guardfile +5 -0
- data/README.md +42 -0
- data/Rakefile +6 -0
- data/auto_set.gemspec +37 -0
- data/lib/auto_set.rb +10 -0
- data/lib/auto_set/active_record.rb +15 -0
- data/lib/auto_set/set_column.rb +73 -0
- data/lib/auto_set/version.rb +3 -0
- data/spec/lib/active_record_spec.rb +29 -0
- data/spec/models/group.rb +6 -0
- data/spec/models/project.rb +3 -0
- data/spec/models/task.rb +6 -0
- data/spec/spec_helper.rb +9 -0
- data/spec/support/active_record.rb +16 -0
- metadata +224 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 9e494c395aca1b790701e5546cd7dfcdcd8469ab
|
|
4
|
+
data.tar.gz: 5af33c5e296b6819acaa5630001e5c777d949103
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 95c321680ec332d3c902215eaeaed6a3fa8e33ee063e352d8e2aa12879d22b8a77ca7fef3738bb755059d3c0d3d1b9f87e0a11cb1f75e7dad4166dafe7f79486
|
|
7
|
+
data.tar.gz: 01dcad5c85909ad2bfbae0f13ceb0b791112ccecd3b28f1af5cf4bba05c2d0447971fa9af17c1f8e693dc3eb39e5101d334c52445f19b70634acc966f67f1e30
|
data/.coveralls.yml
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
service_name: travis-ci
|
data/.gitignore
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
*.gem
|
|
2
|
+
*.rbc
|
|
3
|
+
/.config
|
|
4
|
+
/coverage/
|
|
5
|
+
/InstalledFiles
|
|
6
|
+
/pkg/
|
|
7
|
+
/spec/reports/
|
|
8
|
+
/test/tmp/
|
|
9
|
+
/test/version_tmp/
|
|
10
|
+
/tmp/
|
|
11
|
+
|
|
12
|
+
## Specific to RubyMotion:
|
|
13
|
+
.dat*
|
|
14
|
+
.repl_history
|
|
15
|
+
build/
|
|
16
|
+
|
|
17
|
+
## Documentation cache and generated files:
|
|
18
|
+
/.yardoc/
|
|
19
|
+
/_yardoc/
|
|
20
|
+
/doc/
|
|
21
|
+
/rdoc/
|
|
22
|
+
|
|
23
|
+
## Environment normalisation:
|
|
24
|
+
/.bundle/
|
|
25
|
+
/vendor/bundle
|
|
26
|
+
/lib/bundler/man/
|
|
27
|
+
|
|
28
|
+
# for a library or gem, you might want to ignore these files since the code is
|
|
29
|
+
# intended to run in multiple environments; otherwise, check them in:
|
|
30
|
+
Gemfile.lock
|
|
31
|
+
.ruby-version
|
|
32
|
+
.ruby-gemset
|
|
33
|
+
|
|
34
|
+
# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
|
|
35
|
+
.rvmrc
|
data/.rspec
ADDED
data/.travis.yml
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
language: ruby
|
|
2
|
+
cache: bundler
|
|
3
|
+
|
|
4
|
+
rvm:
|
|
5
|
+
- 2.0.0
|
|
6
|
+
|
|
7
|
+
script: 'bundle exec rake'
|
|
8
|
+
|
|
9
|
+
notifications:
|
|
10
|
+
email:
|
|
11
|
+
recipients:
|
|
12
|
+
- felipe@29sul.com.br
|
|
13
|
+
- elton@29sul.com.br
|
|
14
|
+
on_failure: change # [always|never|change]
|
|
15
|
+
on_success: change # [always|never|change]
|
data/Gemfile
ADDED
data/Guardfile
ADDED
data/README.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# auto_set
|
|
2
|
+
|
|
3
|
+
[](https://travis-ci.org/felipediesel/auto_set)
|
|
4
|
+
[](https://coveralls.io/r/felipediesel/auto_set?branch=master)
|
|
5
|
+
[](https://codeclimate.com/github/felipediesel/auto_set)
|
|
6
|
+
|
|
7
|
+
auto_set automatically update a column from a relationship in Rails.
|
|
8
|
+
|
|
9
|
+
## Installation
|
|
10
|
+
|
|
11
|
+
You can use auto_set as a gem in Rails 4.
|
|
12
|
+
|
|
13
|
+
To use the gem version, put the following gem requirement in your `Gemfile`:
|
|
14
|
+
|
|
15
|
+
gem "auto_set"
|
|
16
|
+
|
|
17
|
+
## Usage
|
|
18
|
+
|
|
19
|
+
Supposing you have 3 models: Project, Group and Task and when you create a task in a groupit need to be related also to project. So, to auto\_set update task.project_id with group.project.id, you do this:
|
|
20
|
+
|
|
21
|
+
auto_set :project, :group
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
The is also another case where you have a code that can be entered by the user and you want to relate it to an id. Let's assume that Group has a column project\_code and you want to set project_id with that project id:
|
|
25
|
+
|
|
26
|
+
auto_set :project, from: :code
|
|
27
|
+
|
|
28
|
+
## Customizing
|
|
29
|
+
|
|
30
|
+
You can set different type of callback:
|
|
31
|
+
|
|
32
|
+
auto_set :column, :parent, before: :create
|
|
33
|
+
|
|
34
|
+
before can be used in both cases of use and it can be save (default), create or validation.
|
|
35
|
+
|
|
36
|
+
## Compatibility
|
|
37
|
+
|
|
38
|
+
Tested with Rails 4.0.13 in Ruby 2.0.0
|
|
39
|
+
|
|
40
|
+
## License
|
|
41
|
+
|
|
42
|
+
MIT License. Copyright 2011 29sul Tecnologia da Informação <http://www.29sul.com.br/>
|
data/Rakefile
ADDED
data/auto_set.gemspec
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
|
3
|
+
require "auto_set/version"
|
|
4
|
+
|
|
5
|
+
Gem::Specification.new do |spec|
|
|
6
|
+
spec.name = "auto_set"
|
|
7
|
+
spec.version = AutoSet::VERSION
|
|
8
|
+
spec.licenses = %w(MIT)
|
|
9
|
+
spec.platform = Gem::Platform::RUBY
|
|
10
|
+
spec.authors = ["Felipe Diesel"]
|
|
11
|
+
spec.email = ["felipediesel@gmail.com"]
|
|
12
|
+
spec.homepage = "http://github.com/felipediesel/auto_set"
|
|
13
|
+
spec.summary = %q{automatically update a column from a relationship}
|
|
14
|
+
spec.description = %q{Automatically update a column from a relationship}
|
|
15
|
+
|
|
16
|
+
spec.rubyforge_project = "auto_set"
|
|
17
|
+
|
|
18
|
+
spec.files = `git ls-files`.split("\n")
|
|
19
|
+
spec.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
20
|
+
spec.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
|
21
|
+
spec.require_paths = ["lib"]
|
|
22
|
+
|
|
23
|
+
spec.add_dependency "activerecord", "~> 4.0"
|
|
24
|
+
spec.add_dependency "activesupport", "~> 4.0"
|
|
25
|
+
|
|
26
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
|
27
|
+
spec.add_development_dependency "rake"
|
|
28
|
+
|
|
29
|
+
spec.add_development_dependency "rspec"
|
|
30
|
+
spec.add_development_dependency "rspec-nc"
|
|
31
|
+
spec.add_development_dependency "guard"
|
|
32
|
+
spec.add_development_dependency "guard-rspec"
|
|
33
|
+
spec.add_development_dependency "fuubar"
|
|
34
|
+
spec.add_development_dependency "coveralls"
|
|
35
|
+
|
|
36
|
+
spec.add_development_dependency 'sqlite3'
|
|
37
|
+
end
|
data/lib/auto_set.rb
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require "active_record"
|
|
2
|
+
require "active_support"
|
|
3
|
+
require "auto_set/version"
|
|
4
|
+
|
|
5
|
+
module AutoSet
|
|
6
|
+
autoload :SetColumn , "auto_set/set_column"
|
|
7
|
+
autoload :ActiveRecord , "auto_set/active_record"
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
ActiveRecord::Base.send :include, AutoSet::ActiveRecord
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
module AutoSet
|
|
2
|
+
module ActiveRecord
|
|
3
|
+
extend ActiveSupport::Concern
|
|
4
|
+
|
|
5
|
+
module ClassMethods
|
|
6
|
+
def auto_set(column, parents, options = {})
|
|
7
|
+
before = (parents.is_a?(Hash) ? parents : options).delete(:before)
|
|
8
|
+
|
|
9
|
+
callback = [:save, :create, :validation].include?(before) ? :"before_#{before}" : :before_save
|
|
10
|
+
|
|
11
|
+
self.send callback, SetColumn.new(column, parents, options)
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
module AutoSet
|
|
2
|
+
class SetColumn
|
|
3
|
+
def initialize(column, parents, options = {})
|
|
4
|
+
@column = column
|
|
5
|
+
|
|
6
|
+
if parents.is_a? Hash
|
|
7
|
+
@options = parents.reverse_merge from: :code
|
|
8
|
+
else
|
|
9
|
+
@options = options || {}
|
|
10
|
+
@parents = parents
|
|
11
|
+
@parents = @parents.is_a?(Array) ? @parents : [ @parents ]
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def before_save(record)
|
|
16
|
+
@record = record
|
|
17
|
+
if @parents.present?
|
|
18
|
+
direct
|
|
19
|
+
else
|
|
20
|
+
from_column
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def before_create(record)
|
|
25
|
+
before_save record
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def before_validation(record)
|
|
29
|
+
before_save record
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
private
|
|
33
|
+
|
|
34
|
+
def direct
|
|
35
|
+
if @record.send(@column).blank?
|
|
36
|
+
@record.send "#{@column}=", parent_object.send(@column)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def from_column
|
|
41
|
+
if @record.send("#{@column}_#{@options[:from]}_changed?")
|
|
42
|
+
from_column_changed
|
|
43
|
+
elsif @record.send("#{@column}_id_changed?")
|
|
44
|
+
from_column_id_changed
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def parent_object
|
|
49
|
+
parent = @record
|
|
50
|
+
@parents.each do |parent_name|
|
|
51
|
+
parent = parent.send(parent_name) if parent.respond_to? parent_name
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
parent
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def parent_from_column(column, from)
|
|
58
|
+
if @record.send("#{column}_#{from}").present?
|
|
59
|
+
reflection = @record.class.reflections[column.to_s]
|
|
60
|
+
reflection.klass.where(from => @record.send("#{column}_#{from}")).first if reflection.present?
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def from_column_changed
|
|
65
|
+
@record.send "#{@column}=", parent_from_column(@column, @options[:from])
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def from_column_id_changed
|
|
69
|
+
value = @record.send(@column).code if @record.send(@column).present?
|
|
70
|
+
@record.send "#{@column}_#{@options[:from]}=", value
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'models/project'
|
|
3
|
+
require 'models/group'
|
|
4
|
+
require 'models/task'
|
|
5
|
+
|
|
6
|
+
describe AutoSet do
|
|
7
|
+
before :all do
|
|
8
|
+
@project = Project.create title: 'My Awesome Project', code: 'proj1'
|
|
9
|
+
@group_1 = Group.create title: 'My Group', project_code: 'proj1'
|
|
10
|
+
@task = @group_1.tasks.create content: 'Write awesome documentation'
|
|
11
|
+
|
|
12
|
+
@group_2 = @project.groups.create title: 'Second Group'
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
describe 'parent' do
|
|
16
|
+
it { expect(@group_1.project_id).to eq 1 }
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
describe 'from' do
|
|
20
|
+
it { expect(@task.project_id).to eq 1 }
|
|
21
|
+
it { expect(@group_2.project_code).to eq 'proj1' }
|
|
22
|
+
it {
|
|
23
|
+
@group_2.project = nil
|
|
24
|
+
@group_2.save
|
|
25
|
+
|
|
26
|
+
expect(@group_2.project_code).to eq nil
|
|
27
|
+
}
|
|
28
|
+
end
|
|
29
|
+
end
|
data/spec/models/task.rb
ADDED
data/spec/spec_helper.rb
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
ActiveRecord::Migration.create_table :projects do |t|
|
|
2
|
+
t.string :title
|
|
3
|
+
t.string :code
|
|
4
|
+
end
|
|
5
|
+
|
|
6
|
+
ActiveRecord::Migration.create_table :groups do |t|
|
|
7
|
+
t.string :title
|
|
8
|
+
t.references :project
|
|
9
|
+
t.string :project_code
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
ActiveRecord::Migration.create_table :tasks do |t|
|
|
13
|
+
t.string :content
|
|
14
|
+
t.references :group
|
|
15
|
+
t.references :project
|
|
16
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: auto_set
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 1.2.0
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Felipe Diesel
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2015-03-26 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: activerecord
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ~>
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '4.0'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ~>
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '4.0'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: activesupport
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ~>
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '4.0'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ~>
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '4.0'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: bundler
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ~>
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '1.3'
|
|
48
|
+
type: :development
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ~>
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '1.3'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: rake
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - '>='
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '0'
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - '>='
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '0'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: rspec
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - '>='
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '0'
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - '>='
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '0'
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
name: rspec-nc
|
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - '>='
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: '0'
|
|
90
|
+
type: :development
|
|
91
|
+
prerelease: false
|
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
+
requirements:
|
|
94
|
+
- - '>='
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: '0'
|
|
97
|
+
- !ruby/object:Gem::Dependency
|
|
98
|
+
name: guard
|
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
|
100
|
+
requirements:
|
|
101
|
+
- - '>='
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: '0'
|
|
104
|
+
type: :development
|
|
105
|
+
prerelease: false
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
requirements:
|
|
108
|
+
- - '>='
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: '0'
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
name: guard-rspec
|
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
|
114
|
+
requirements:
|
|
115
|
+
- - '>='
|
|
116
|
+
- !ruby/object:Gem::Version
|
|
117
|
+
version: '0'
|
|
118
|
+
type: :development
|
|
119
|
+
prerelease: false
|
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
requirements:
|
|
122
|
+
- - '>='
|
|
123
|
+
- !ruby/object:Gem::Version
|
|
124
|
+
version: '0'
|
|
125
|
+
- !ruby/object:Gem::Dependency
|
|
126
|
+
name: fuubar
|
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
|
128
|
+
requirements:
|
|
129
|
+
- - '>='
|
|
130
|
+
- !ruby/object:Gem::Version
|
|
131
|
+
version: '0'
|
|
132
|
+
type: :development
|
|
133
|
+
prerelease: false
|
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
135
|
+
requirements:
|
|
136
|
+
- - '>='
|
|
137
|
+
- !ruby/object:Gem::Version
|
|
138
|
+
version: '0'
|
|
139
|
+
- !ruby/object:Gem::Dependency
|
|
140
|
+
name: coveralls
|
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
|
142
|
+
requirements:
|
|
143
|
+
- - '>='
|
|
144
|
+
- !ruby/object:Gem::Version
|
|
145
|
+
version: '0'
|
|
146
|
+
type: :development
|
|
147
|
+
prerelease: false
|
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
149
|
+
requirements:
|
|
150
|
+
- - '>='
|
|
151
|
+
- !ruby/object:Gem::Version
|
|
152
|
+
version: '0'
|
|
153
|
+
- !ruby/object:Gem::Dependency
|
|
154
|
+
name: sqlite3
|
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
|
156
|
+
requirements:
|
|
157
|
+
- - '>='
|
|
158
|
+
- !ruby/object:Gem::Version
|
|
159
|
+
version: '0'
|
|
160
|
+
type: :development
|
|
161
|
+
prerelease: false
|
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
163
|
+
requirements:
|
|
164
|
+
- - '>='
|
|
165
|
+
- !ruby/object:Gem::Version
|
|
166
|
+
version: '0'
|
|
167
|
+
description: Automatically update a column from a relationship
|
|
168
|
+
email:
|
|
169
|
+
- felipediesel@gmail.com
|
|
170
|
+
executables: []
|
|
171
|
+
extensions: []
|
|
172
|
+
extra_rdoc_files: []
|
|
173
|
+
files:
|
|
174
|
+
- .coveralls.yml
|
|
175
|
+
- .gitignore
|
|
176
|
+
- .rspec
|
|
177
|
+
- .travis.yml
|
|
178
|
+
- Gemfile
|
|
179
|
+
- Guardfile
|
|
180
|
+
- README.md
|
|
181
|
+
- Rakefile
|
|
182
|
+
- auto_set.gemspec
|
|
183
|
+
- lib/auto_set.rb
|
|
184
|
+
- lib/auto_set/active_record.rb
|
|
185
|
+
- lib/auto_set/set_column.rb
|
|
186
|
+
- lib/auto_set/version.rb
|
|
187
|
+
- spec/lib/active_record_spec.rb
|
|
188
|
+
- spec/models/group.rb
|
|
189
|
+
- spec/models/project.rb
|
|
190
|
+
- spec/models/task.rb
|
|
191
|
+
- spec/spec_helper.rb
|
|
192
|
+
- spec/support/active_record.rb
|
|
193
|
+
homepage: http://github.com/felipediesel/auto_set
|
|
194
|
+
licenses:
|
|
195
|
+
- MIT
|
|
196
|
+
metadata: {}
|
|
197
|
+
post_install_message:
|
|
198
|
+
rdoc_options: []
|
|
199
|
+
require_paths:
|
|
200
|
+
- lib
|
|
201
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
202
|
+
requirements:
|
|
203
|
+
- - '>='
|
|
204
|
+
- !ruby/object:Gem::Version
|
|
205
|
+
version: '0'
|
|
206
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
207
|
+
requirements:
|
|
208
|
+
- - '>='
|
|
209
|
+
- !ruby/object:Gem::Version
|
|
210
|
+
version: '0'
|
|
211
|
+
requirements: []
|
|
212
|
+
rubyforge_project: auto_set
|
|
213
|
+
rubygems_version: 2.4.4
|
|
214
|
+
signing_key:
|
|
215
|
+
specification_version: 4
|
|
216
|
+
summary: automatically update a column from a relationship
|
|
217
|
+
test_files:
|
|
218
|
+
- spec/lib/active_record_spec.rb
|
|
219
|
+
- spec/models/group.rb
|
|
220
|
+
- spec/models/project.rb
|
|
221
|
+
- spec/models/task.rb
|
|
222
|
+
- spec/spec_helper.rb
|
|
223
|
+
- spec/support/active_record.rb
|
|
224
|
+
has_rdoc:
|