dcidev_active_record 0.0.9 → 0.0.10

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dcidev_active_record.rb +14 -0
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f2f414077e25a60a2125212a12f9ae9139f4fce7ee01215616eee2da5570de7d
4
- data.tar.gz: a8245cd2d0e6ea3b3bc94bee724070dcf614a21796b1dbc617213c419bdedc6f
3
+ metadata.gz: 39ef130c33dba54d43cb868680de1a87e6a21fdd0aa1ec784231b0faad38e998
4
+ data.tar.gz: 51bb74f205875eba8875bf1136e8c53ae4b61ef0bf7587224603e809f477ea0b
5
5
  SHA512:
6
- metadata.gz: '07590e79636f220a44f31d777d9a9fa43782b704960db95bd7da430d41f28ce924181a93529165d3dcd7cd808a4c896a4cb828af72aa23ce15a95f883552d98e'
7
- data.tar.gz: 280180a70a2453932642e80503d5619c01035f2ac5102bca34886483dadef94f79c95ebcee62e8474a2650d726b3db63e2bef595495a57c66ecc506bc97b7355
6
+ metadata.gz: f6be9964e2b1fee13e235bb9c6ca21dfc9fb2e472cb425ef9afe47e1d2175194c93138b2965c02fca6276ed1a7dd45e9f6b17fc797952cb2044c671888d3f20d
7
+ data.tar.gz: 6d5d16730a92f8b577ae7b1d181cd888842590778e74156e292450b9954c1fed0954b6d60c6300b112b4a08fbde85de5922ae6835039f81f3f8a5dbf7f7facae
@@ -118,6 +118,20 @@ module DcidevActiveRecord
118
118
  return 'LIKE' if db == 'mysql'
119
119
  end
120
120
  end
121
+
122
+ def init_nested_attributes(reflections)
123
+ reflections.each do |r|
124
+ define_method("#{r}_attributes=") do |attr|
125
+ if attr.present?
126
+ children = []
127
+ attr.each do |child|
128
+ children << r.classify.constantize.find_or_initialize_by(child)
129
+ end
130
+ eval("self.#{r} = children")
131
+ end
132
+ end
133
+ end
134
+ end
121
135
  end
122
136
 
123
137
  ActiveRecord::Base.send(:include, DcidevActiveRecord)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dcidev_active_record
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Punto Damar P