hstorable 0.0.2 → 0.0.3

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,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2147ada7cb59fbcdecb31bd32ec1d2b1cf6913ef
4
- data.tar.gz: 5a3dcc28952e3dd900e03f5051ea64e0c026273c
3
+ metadata.gz: 61012f48a37ef9165d01ac0ee19e0a451c59110e
4
+ data.tar.gz: 005f22f6a3f406406d8cbcb2620c3badc9dae427
5
5
  SHA512:
6
- metadata.gz: a9228e6b9a0a4a7ec83550124dfe36327b719736c4d6351facafbf0a08fe4042044c66590f342dff9e242f40f25d7659bc5a4b3f70c7e1a5e37d8caa48c81b68
7
- data.tar.gz: 54f35e078b97ad89ae38cedc98aa5568f866dd0d97828a2a6812a7f5c1c6ac9a0228c7bfadf9031977de0ce93be30602e92410d93faaed927e6143513d823480
6
+ metadata.gz: dceb7bbd6b653c4c001419299f359c1ee904dee3dc93dcee5bb053db2f882565c4d122cf8140b07d19c83e03bc8f0e2afde57a3235a721ad3647342129645c29
7
+ data.tar.gz: aa61c0049e5889e0c61f5146f0afd017e94c92d91a984cb2602090add1b1ce7d9cd5b6e5be780f77708616c5d5eb32fcd165e913fc22270c9e4b4aa6f082a9cc
data/README.md CHANGED
@@ -4,15 +4,37 @@ This gem simplifies working wih fields stored using Hstore
4
4
 
5
5
  ## How to use
6
6
 
7
- It is pertty easy to use HStorable with STI in RoR:
7
+ To use hstorable you should add this line to your Gemfile:
8
+
9
+ ```
10
+ gem 'hstorable', '~> 0.0.2'
11
+ ```
12
+
13
+ Note, this gem depends on hsore extension of PostgreSQL. So, you should create this extension in your db:
14
+
15
+ ```SQL
16
+ CREATE EXTENSION hstore;
17
+ ```
18
+
19
+ It is pertty easy to use HStorable with STI in RoR. First of all you shoud create table like this:
20
+
21
+ ```ruby
22
+ create_table :wrappers do |t|
23
+ t.hstore :properties, default: '', null: false
24
+ t.string :type, null: false
25
+ t.timestamps
26
+ end
27
+ ```
28
+
29
+ That's all. Now you can use hstorable to solve your problems.
8
30
 
9
31
  ```ruby
10
32
 
11
- class Api::BaseWrapper < ActiveRecord::Base
12
- extend Hstorable
33
+ class Api::Wrapper < ActiveRecord::Base
34
+ include Hstorable
13
35
  end
14
36
 
15
- class Api::OneApiWrapper < Api::BaseWrapper
37
+ class Api::OneApiWrapper < Api::Wrapper
16
38
  hstore_simple :properties, name: 'consumer_key'
17
39
  hstore_simple :properties, name: 'consumer_secret'
18
40
  hstore_simple :properties, name: 'api_version', default: '26.0'
@@ -29,30 +51,17 @@ class Api::AnotherApiWrapper < Api::BaseWrapper
29
51
  end
30
52
  ```
31
53
 
32
- Different types of models with different set of fields will be stored in one table.
33
-
34
- ## Installation
35
-
36
- Add this line to your application's Gemfile:
37
-
38
- gem 'hstorable'
39
-
40
- And then execute:
41
-
42
- $ bundle
54
+ Different types of models with different set of fields will be stored in one table. And you can use it as ordinary model's properties.
43
55
 
44
- Or install it yourself as:
45
-
46
- $ gem install hstorable
47
-
48
-
49
- ## Contributing
56
+ ```ruby
57
+ api = Api::OneApiWrapper.new(consumer_key: '743b57c3120b49b42588011066411d98', cosumer_secret: '743b57c3120b49b42588011066411d98')
58
+ api.cosumer_key # => 743b57c3120b49b42588011066411d98
59
+ api.cosumer_secret # => 743b57c3120b49b42588011066411d98
60
+ api.save
61
+ api.update cosumer_key: 2afc9269f7ceb78533d6a2e2d72a14f9
62
+ ```
50
63
 
51
- 1. Fork it ( http://github.com/kimrgrey/hstorable/fork )
52
- 2. Create your feature branch (`git checkout -b my-new-feature`)
53
- 3. Commit your changes (`git commit -am 'Add some feature'`)
54
- 4. Push to the branch (`git push origin my-new-feature`)
55
- 5. Create new Pull Request
64
+ Cool, isn't?
56
65
 
57
66
  ## License
58
67
 
data/hstorable.gemspec CHANGED
@@ -13,13 +13,13 @@ Gem::Specification.new do |spec|
13
13
  spec.homepage = "http://hstorable.kimrgrey.org/"
14
14
  spec.license = "MIT"
15
15
 
16
- spec.files = `git ls-files`.split($/)
16
+ spec.files = `git ls-files`.split("\n")
17
17
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
21
  spec.add_development_dependency "bundler", "~> 1.5"
22
- spec.add_development_dependency "rake", "~> 10.3.2"
22
+ spec.add_development_dependency "rake", "~> 10.3"
23
23
 
24
24
  spec.add_runtime_dependency "pg", "0.17.1"
25
25
  end
@@ -1,3 +1,3 @@
1
1
  module Hstorable
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hstorable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergey Tsvetkov
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 10.3.2
33
+ version: '10.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 10.3.2
40
+ version: '10.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: pg
43
43
  requirement: !ruby/object:Gem::Requirement