model_manage 0.1.6 → 0.1.7

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.6
1
+ 0.1.7
@@ -10,57 +10,57 @@ module ModelManage
10
10
  end
11
11
  module ClassMethods
12
12
  def forms
13
- const_get(:FORMS)
13
+ const_get(:FORMS)
14
14
  end
15
15
 
16
16
  def key?(key)
17
- const_get(:KEYS).member? key.to_s
17
+ const_get(:KEYS).member? key.to_s
18
18
  rescue
19
- const_set :KEYS, []
20
- false
19
+ const_set :KEYS, []
20
+ false
21
21
  end
22
22
 
23
23
  def field(name, options = {})
24
- min = 1
24
+ super
25
25
 
26
- validates = {}
27
- validates[:in] = options.delete(:in) || options.delete(:within)
28
- if options[:limit] && (! validates[:in])
29
- validates[:in] = (min..options.delete(:limit))
30
- end
26
+ min = 1
27
+ validates = {}
28
+ validates[:in] = options.delete(:in) || options.delete(:within)
29
+ if options[:limit] && (! validates[:in])
30
+ validates[:in] = (min..options.delete(:limit))
31
+ end
31
32
 
32
- validates[:allow_nil ] = options.delete(:allow_nil) || false
33
- validates[:allow_blank] = options.delete(:allow_blank) || false
33
+ validates[:allow_nil ] = options.delete(:allow_nil) || false
34
+ validates[:allow_blank] = options.delete(:allow_blank) || false
34
35
 
35
- super
36
- null_ok = validates[:allow_nil] || validates[:allow_blank]
37
- form_attributes = {
38
- owner: self,
39
- name: name.to_s,
40
- type: options[:type] || String,
41
- limit: nil,
42
- null: null_ok,
43
- primary: key?(name),
44
- scale: nil
45
- }
36
+ null_ok = validates[:allow_nil] || validates[:allow_blank]
37
+ form_attributes = {
38
+ owner: self,
39
+ name: name.to_s,
40
+ type: options[:type] || String,
41
+ limit: nil,
42
+ null: null_ok,
43
+ primary: key?(name),
44
+ scale: nil
45
+ }
46
46
 
47
- if validates[:in].present?
48
- validates_length_of name, validates
49
- form_attributes[:limit] = validates[:in].max
50
- form_attributes.merge!(validates)
51
- end
47
+ if validates[:in].present?
48
+ validates_length_of name, validates
49
+ form_attributes[:limit] = validates[:in].max
50
+ form_attributes.merge!(validates)
51
+ end
52
52
 
53
- forms[name] = ::OpenStruct.new(form_attributes)
53
+ forms[name] = OpenStruct.new(form_attributes)
54
54
  end
55
55
 
56
56
  def relation_form_set(name, options = {})
57
- relation_attributes = {
58
- owner: self,
59
- name: name.to_s,
60
- options: options
61
- }.tap{|o| o[:data] = o.dup }
62
- relation = relations[name.to_s]
63
- relation.form = OpenStruct.new(relation_attributes)
57
+ relation_attributes = {
58
+ owner: self,
59
+ name: name.to_s,
60
+ options: options
61
+ }.tap{|o| o[:data] = o.dup }
62
+ relation = relations[name.to_s]
63
+ relation.form = OpenStruct.new(relation_attributes)
64
64
  end
65
65
  end
66
66
  end
@@ -30,22 +30,27 @@ module ModelManage
30
30
  def referenced_in(name, options = {})
31
31
  super
32
32
  relation_form_set name, options
33
+ forms.delete("#{name}_id")
33
34
  end
34
35
  def references_many(name, options = {})
35
36
  super
36
37
  relation_form_set name, options
38
+ forms.delete("#{name.to_s.singularize}_ids")
37
39
  end
38
40
  def embedded_in(name, options = {})
39
41
  super
40
42
  relation_form_set name, options
43
+ forms.delete("#{name}_id")
41
44
  end
42
45
  def embeds_many(name, options = {})
43
46
  super
44
47
  relation_form_set name, options
48
+ forms.delete("#{name.to_s.singularize}_ids")
45
49
  end
46
50
  def references_and_referenced_in_many(name, options = {})
47
51
  super
48
52
  relation_form_set name, options
53
+ forms.delete("#{name.to_s.singularize}_ids")
49
54
  end
50
55
  end
51
56
  end
data/model_manage.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "model_manage"
8
- s.version = "0.1.6"
8
+ s.version = "0.1.7"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["\u{306a}\u{306a}\u{3053}\u{308d}\u{3073}"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: model_manage
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-01-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: simple_form
16
- requirement: &70242343742300 !ruby/object:Gem::Requirement
16
+ requirement: &70348961174020 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70242343742300
24
+ version_requirements: *70348961174020
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: mongoid
27
- requirement: &70242343739620 !ruby/object:Gem::Requirement
27
+ requirement: &70348961173300 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70242343739620
35
+ version_requirements: *70348961173300
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &70242343732720 !ruby/object:Gem::Requirement
38
+ requirement: &70348961172400 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.0.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70242343732720
46
+ version_requirements: *70348961172400
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &70242343731720 !ruby/object:Gem::Requirement
49
+ requirement: &70348961171360 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.6.4
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70242343731720
57
+ version_requirements: *70348961171360
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rcov
60
- requirement: &70242343729980 !ruby/object:Gem::Requirement
60
+ requirement: &70348961166780 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70242343729980
68
+ version_requirements: *70348961166780
69
69
  description: モデル、フィールドといった情報へ簡単アクセスすることを目的に開発しています。
70
70
  email: 7korobi@gmail.com
71
71
  executables: []
@@ -108,7 +108,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
108
108
  version: '0'
109
109
  segments:
110
110
  - 0
111
- hash: -3860435876427644110
111
+ hash: 2121809140796983656
112
112
  required_rubygems_version: !ruby/object:Gem::Requirement
113
113
  none: false
114
114
  requirements: