seria 1.0.3 → 1.0.4

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 CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZWIwOTE2MjA4M2VhN2JlNDhlZWU5YTkzNTQzYWQyMDNiZWFjMTFhMA==
4
+ MWM0NTNiM2FkNTJjYTE0ZDBkYmNhOWY5ZDgwOTU4ZTY0ZTQzN2VmMA==
5
5
  data.tar.gz: !binary |-
6
- YzkyYjRjZWVhNWY5NzIwNGU3NTY3MTc4ZTFkNmYzNjlhMzA1ZWE4Mw==
6
+ NjlmOTk5OGRjOTNmMDQwMTY3MWMzZDRmZmIwNTBkNjFjYWNhZTcwNQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YWFmYmZjMzMzN2UyYTBlM2U5YmVmZmVmZTJmMjEzMjFkMmJjMzNmNTY0OWZi
10
- MTE5ZjM2ZGYxZGQyNzc5MGY1MjE0NTIxOGNiZjc0MGJmMmM4OWQ3OWFhNjk5
11
- OWFlZjNlMDBmOTFjZTA5YTZkZTJhNzVlNGM0NDUyNzg1ZDhmZjk=
9
+ MzRhMGJiNjVmMjViY2UwMWFjNGI5NjM5N2UwOGViYzMxOWU4OWQ0ZDMxZWNh
10
+ YTg0NDQzZmFjZTQzMzZkODQ3NTIzNTgxYTNjMjgyYTU1NjQ2MGIyNWNlYjg1
11
+ ZmVkNDA0MDc0MWY0MDIzZWI1OTNhM2U5MDRjMDEwMDdhODVjN2E=
12
12
  data.tar.gz: !binary |-
13
- YjhkMTBiYWYzNjhkMjY4MzhiNGU4Y2U2YWVkZmRiMjRlZGVkYWRiODRjNDRj
14
- Y2U5MDA3MWI2ODk0YjFiMGRkMjg1YTI3MjFmM2Y5OTQxZWQ5OWNkNjBlZjY2
15
- MTcxZGUxYzU2ZmU2YjYyMjY3MTYyYzViMTZhM2QxN2QyMjZiNTY=
13
+ ZGUzN2NjZDY1Y2IyODM5NjAxODVkYjQ4MTY0YzY3Y2JhOTUzNjkyZTFhOGFi
14
+ YjczOWU2OWU5MjU1N2UzNDFkOWZhOWM4YWZjMzRmNThhMWIxNjc4M2ExNzg2
15
+ ZGY4ZDRhY2EyMGIxOWQ5NWI3NjFmZmMxZDNiZWQzNzExODBmNTI=
data/README.md CHANGED
@@ -37,7 +37,7 @@ Or install it yourself as:
37
37
 
38
38
  ```ruby
39
39
 
40
- class Book
40
+ class Book < ActiveRecord::Base
41
41
  include Seria::InfoTableOwner
42
42
  end
43
43
 
@@ -55,6 +55,19 @@ book.infos["recommended"]
55
55
 
56
56
  ```
57
57
 
58
+ ### Or, avoid awkward association syntax and call directly
59
+
60
+ ```ruby
61
+ Seria.configure do |config|
62
+ config.perform_lookup_on_method_missing = true
63
+ end
64
+
65
+ book.recommended = false
66
+ book.recommended
67
+ => false
68
+
69
+ ```
70
+
58
71
  ### Querying
59
72
 
60
73
  Seria stores your data in separate table with the fields foreign_id, field_name, field_value and field_type
@@ -105,8 +105,12 @@ module Seria
105
105
  end
106
106
 
107
107
  def method_missing(sym, *args, &block)
108
- info = Seria.config.perform_lookup_on_method_missing && my_infos.lookup(sym)
109
- info ? info.field_value : super
108
+ if sym.to_s =~ /\=$/
109
+ my_infos[sym.to_s[0..-2]] = args.first
110
+ else
111
+ info = Seria.config.perform_lookup_on_method_missing && my_infos.lookup(sym)
112
+ info ? info.field_value : super
113
+ end
110
114
  end
111
115
 
112
116
  module ClassMethods
data/lib/seria/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Seria
2
- VERSION = "1.0.3"
2
+ VERSION = "1.0.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: seria
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ronna