categoryz3 0.1 → 0.2

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -7,7 +7,7 @@ Simple categorization to ActiveRecord models.
7
7
 
8
8
  Works like a simple tagging system, but instead of tags it has categories, and categories may have an ilimited level of subcategories.
9
9
 
10
- Using an auxiliary table, it's easy and fast to fetch items from any category, including all level of subcategories it may have.
10
+ Fetches items in any level of subcategories with a single join.
11
11
 
12
12
  == Motivation
13
13
 
@@ -109,4 +109,4 @@ Lists all objects that belongs to the category. (No subcategory objects).
109
109
 
110
110
  = License
111
111
 
112
- This project rocks and uses MIT-LICENSE.
112
+ MIT License. Copyright 2012 Tiago Scolari.
@@ -7,7 +7,7 @@ class CreateCategoryz3ChildItems < ActiveRecord::Migration
7
7
  t.timestamps
8
8
  end
9
9
  add_index :categoryz3_child_items, [:category_id, :created_at]
10
- add_index :categoryz3_child_items, [:category_id, :categorizable_type, :categorizable_id], unique: true, name: 'child_items_unq_idx'
10
+ add_index :categoryz3_child_items, [:category_id, :categorizable_type, :categorizable_id, :master_item_id], unique: true, name: 'child_items_unq_idx'
11
11
  add_index :categoryz3_child_items, [:categorizable_type, :categorizable_id], name: 'child_items_categorizable_idx'
12
12
  add_index :categoryz3_child_items, [:master_item_id]
13
13
  end
@@ -63,14 +63,15 @@ module Categoryz3
63
63
  # Public: Returns the id list of the categories linked to the model
64
64
  #
65
65
  def categories_list
66
- categories.map(&:id).join(", ")
66
+ categories.map(&:id).join(",")
67
67
  end
68
68
 
69
69
  # Public: Accepts an array of category ids as parameter and adds all
70
70
  # of them to the model
71
71
  #
72
72
  def categories_list=(ids)
73
- self.categories = ids.split(",").map do |id|
73
+ ids = ids.is_a?(String) ? ids.split(',') : ids
74
+ self.categories = ids.map do |id|
74
75
  Category.where(id: id).first
75
76
  end
76
77
  end
@@ -1,3 +1,3 @@
1
1
  module Categoryz3
2
- VERSION = "0.1"
2
+ VERSION = "0.2"
3
3
  end
metadata CHANGED
@@ -1,97 +1,98 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: categoryz3
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: '0.1'
4
+ version: '0.2'
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Tiago Scolari
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-06 00:00:00.000000000 Z
12
+ date: 2012-10-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- version_requirements: !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
17
18
  requirements:
18
19
  - - ~>
19
20
  - !ruby/object:Gem::Version
20
21
  version: 3.2.8
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
21
25
  none: false
22
- requirement: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - ~>
25
28
  - !ruby/object:Gem::Version
26
29
  version: 3.2.8
27
- none: false
28
- prerelease: false
29
- type: :runtime
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: rspec-rails
32
- version_requirements: !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
33
34
  requirements:
34
35
  - - ! '>='
35
36
  - !ruby/object:Gem::Version
36
37
  version: '0'
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
37
41
  none: false
38
- requirement: !ruby/object:Gem::Requirement
39
42
  requirements:
40
43
  - - ! '>='
41
44
  - !ruby/object:Gem::Version
42
45
  version: '0'
43
- none: false
44
- prerelease: false
45
- type: :development
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: database_cleaner
48
- version_requirements: !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
49
50
  requirements:
50
51
  - - ! '>='
51
52
  - !ruby/object:Gem::Version
52
53
  version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
53
57
  none: false
54
- requirement: !ruby/object:Gem::Requirement
55
58
  requirements:
56
59
  - - ! '>='
57
60
  - !ruby/object:Gem::Version
58
61
  version: '0'
59
- none: false
60
- prerelease: false
61
- type: :development
62
62
  - !ruby/object:Gem::Dependency
63
63
  name: factory_girl_rails
64
- version_requirements: !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
65
66
  requirements:
66
67
  - - ! '>='
67
68
  - !ruby/object:Gem::Version
68
69
  version: '0'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
69
73
  none: false
70
- requirement: !ruby/object:Gem::Requirement
71
74
  requirements:
72
75
  - - ! '>='
73
76
  - !ruby/object:Gem::Version
74
77
  version: '0'
75
- none: false
76
- prerelease: false
77
- type: :development
78
78
  - !ruby/object:Gem::Dependency
79
79
  name: ffaker
80
- version_requirements: !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
81
82
  requirements:
82
83
  - - ! '>='
83
84
  - !ruby/object:Gem::Version
84
85
  version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
85
89
  none: false
86
- requirement: !ruby/object:Gem::Requirement
87
90
  requirements:
88
91
  - - ! '>='
89
92
  - !ruby/object:Gem::Version
90
93
  version: '0'
91
- none: false
92
- prerelease: false
93
- type: :development
94
- description: Works like a simple tagging system, but instead of tags it has categories, and categories may have an ilimited level of subcategories.
94
+ description: Works like a simple tagging system, but instead of tags it has categories,
95
+ and categories may have an ilimited level of subcategories.
95
96
  email:
96
97
  - tscolari@gmail.com
97
98
  executables: []
@@ -105,11 +106,11 @@ files:
105
106
  - db/migrate/20121003060539_create_categoryz3_categories.rb
106
107
  - db/migrate/20121003060933_create_categoryz3_items.rb
107
108
  - db/migrate/20121003061056_create_categoryz3_child_items.rb
108
- - lib/categoryz3.rb
109
109
  - lib/categoryz3/categorizable.rb
110
110
  - lib/categoryz3/engine.rb
111
- - lib/categoryz3/version.rb
112
111
  - lib/categoryz3/validators/child_item_category_validator.rb
112
+ - lib/categoryz3/version.rb
113
+ - lib/categoryz3.rb
113
114
  - lib/generators/categoryz3/migrations/migrations_generator.rb
114
115
  - lib/generators/categoryz3/migrations/USAGE
115
116
  - lib/tasks/categoryz3_tasks.rake
@@ -118,33 +119,32 @@ files:
118
119
  - README.rdoc
119
120
  homepage: https://github.com/tscolari/categoryz3
120
121
  licenses: []
121
- post_install_message:
122
+ post_install_message:
122
123
  rdoc_options: []
123
124
  require_paths:
124
125
  - lib
125
126
  required_ruby_version: !ruby/object:Gem::Requirement
127
+ none: false
126
128
  requirements:
127
129
  - - ! '>='
128
130
  - !ruby/object:Gem::Version
131
+ version: '0'
129
132
  segments:
130
133
  - 0
131
- hash: 2
132
- version: '0'
133
- none: false
134
+ hash: -20425421856423707
134
135
  required_rubygems_version: !ruby/object:Gem::Requirement
136
+ none: false
135
137
  requirements:
136
138
  - - ! '>='
137
139
  - !ruby/object:Gem::Version
140
+ version: '0'
138
141
  segments:
139
142
  - 0
140
- hash: 2
141
- version: '0'
142
- none: false
143
+ hash: -20425421856423707
143
144
  requirements: []
144
- rubyforge_project:
145
+ rubyforge_project:
145
146
  rubygems_version: 1.8.24
146
- signing_key:
147
+ signing_key:
147
148
  specification_version: 3
148
149
  summary: Simple categorization to ActiveRecord models.
149
150
  test_files: []
150
- ...