hashed 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Hashed
2
2
 
3
- Provides `hashed` method to ActiveRecord objects set that return hash where keys is value of some field in dataset (def. "id").
3
+ Provides `hashed` method to ActiveRecord objects-set that return hash where keys is value of some field in dataset (default: "id").
4
4
 
5
5
  ```ruby
6
6
  gem "hashed"
@@ -9,6 +9,11 @@ gem "hashed"
9
9
  Then run `bundle install` and simple use it!
10
10
 
11
11
  ```ruby
12
- Categories.active.hashed # equal to Categories.active.hashed(:id)
13
- Categories.active.hashed(:create_at)
12
+ Category.active.hashed
13
+ # equal to
14
+ Category.active.hashed(:id)
15
+ # you may want to have hash not by id
16
+ Category.active.hashed(:created_at)
17
+ # you may want to select only one field ({key: value})
18
+ Category.active.hashed(field: :created_at, only_field: :name)
14
19
  ```
@@ -1,3 +1,3 @@
1
1
  module Hashed
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/hashed.rb CHANGED
@@ -3,8 +3,9 @@ require "active_record"
3
3
 
4
4
  module Hashed
5
5
  def hashed(opts = { field: :id, only_field: false })
6
- opts = { field: opts } if opts.is_a? Symbol
7
- result = {}
6
+ opts = { field: opts } if opts.is_a? Symbol
7
+ opts[:field] = :id if opts[:field].nil?
8
+ result = {}
8
9
 
9
10
  self.all.each do |row|
10
11
  result[row.send(opts[:field])] = (opts[:only_field] ? row.send(opts[:only_field]) : row)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hashed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-12-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70130655171420 !ruby/object:Gem::Requirement
16
+ requirement: &70182324532520 !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: *70130655171420
24
+ version_requirements: *70182324532520
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: sqlite3-ruby
27
- requirement: &70130659624140 !ruby/object:Gem::Requirement
27
+ requirement: &70182329336180 !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: *70130659624140
35
+ version_requirements: *70182329336180
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: activerecord
38
- requirement: &70130659623640 !ruby/object:Gem::Requirement
38
+ requirement: &70182329335680 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '3.0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70130659623640
46
+ version_requirements: *70182329335680
47
47
  description: Makes hash from AR objects collection
48
48
  email:
49
49
  - rinat.crone@gmail.com