couchrest_model_slug 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -1,8 +1,8 @@
1
1
  source "http://rubygems.org"
2
2
 
3
3
  group :development, :test do
4
- gem "rails", "3.0.8"
5
- gem "capybara", ">= 0.4.0"
4
+ gem "rails", "3.2.3"
5
+ gem "capybara", "~> 1.1"
6
6
  gem "rspec-rails", "~> 2.6"
7
7
  gem "simplecov", :require => false
8
8
  gem "factory_girl_rails"
@@ -1,4 +1,5 @@
1
- == CouchRest Model Slug
1
+ == CouchRest Model Slug {<img src="https://secure.travis-ci.org/lucasrenan/couchrest-model-slug.png?branch=master" alt="Build Status" />}[http://travis-ci.org/lucasrenan/couchrest-model-slug] {<img src="https://gemnasium.com/lucasrenan/couchrest-model-slug.png" alt="Dependency Status" />}[https://gemnasium.com/lucasrenan/couchrest-model-slug]
2
+
2
3
 
3
4
  CouchRest Model Slug is a simple gem to generate better urls using CouchRest Model in an easy way.
4
5
  It's based on Mongoid Slug https://github.com/papercavalier/mongoid-slug
@@ -9,7 +10,7 @@ Time to relax with beautiful urls.
9
10
 
10
11
  Add to Gemfile
11
12
 
12
- gem "couchrest_model_slug", "~> 0.0.1"
13
+ gem "couchrest_model_slug", "~> 0.0.3"
13
14
 
14
15
  A model example
15
16
 
@@ -22,27 +22,6 @@ module CouchRest
22
22
  cattr_accessor :slugged_props
23
23
  end
24
24
 
25
- module InstanceMethods
26
- def to_param
27
- result = self.send :slug
28
- return super if result.blank?
29
- result
30
- end
31
-
32
- private
33
- def generate_slug
34
- if new_record? || slugged_props_changed?
35
- slug = self.slugged_props.collect{ |prop| read_attribute(prop) }.join(", ").to_url
36
- slug = self.class.generate_count_for_slug(slug)
37
- self.slug = slug
38
- end
39
- end
40
-
41
- def slugged_props_changed?
42
- self.slugged_props.any? { |p| self.send("#{p}_changed?") }
43
- end
44
- end
45
-
46
25
  module ClassMethods
47
26
  def slug(*props)
48
27
  self.slugged_props = props.map(&:to_s)
@@ -57,6 +36,25 @@ module CouchRest
57
36
  hash.nil? ? slug_without_count : "#{slug_without_count}-#{hash['value']}"
58
37
  end
59
38
  end
39
+
40
+ def to_param
41
+ result = self.send :slug
42
+ return super if result.blank?
43
+ result
44
+ end
45
+
46
+ private
47
+ def generate_slug
48
+ if new_record? || slugged_props_changed?
49
+ slug = self.slugged_props.collect{ |prop| read_attribute(prop) }.join(", ").to_url
50
+ slug = self.class.generate_count_for_slug(slug)
51
+ self.slug = slug
52
+ end
53
+ end
54
+
55
+ def slugged_props_changed?
56
+ self.slugged_props.any? { |p| self.send("#{p}_changed?") }
57
+ end
60
58
 
61
59
  end
62
60
  end
@@ -1,7 +1,7 @@
1
1
  module CouchRest
2
2
  module Model
3
3
  module Slug
4
- VERSION = "0.0.2"
4
+ VERSION = "0.0.3"
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,48 +1,54 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: couchrest_model_slug
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
4
5
  prerelease:
5
- version: 0.0.2
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Lucas Renan
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2011-06-25 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
12
+ date: 2012-05-14 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
16
15
  name: couchrest_model
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
19
17
  none: false
20
- requirements:
18
+ requirements:
21
19
  - - ~>
22
- - !ruby/object:Gem::Version
23
- version: 1.1.0
20
+ - !ruby/object:Gem::Version
21
+ version: 1.1.2
24
22
  type: :runtime
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: stringex
28
23
  prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: 1.1.2
30
+ - !ruby/object:Gem::Dependency
31
+ name: stringex
32
+ requirement: !ruby/object:Gem::Requirement
30
33
  none: false
31
- requirements:
34
+ requirements:
32
35
  - - ~>
33
- - !ruby/object:Gem::Version
34
- version: 1.2.1
36
+ - !ruby/object:Gem::Version
37
+ version: '1.3'
35
38
  type: :runtime
36
- version_requirements: *id002
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '1.3'
37
46
  description:
38
47
  email: contato@lucasrenan.com
39
48
  executables: []
40
-
41
49
  extensions: []
42
-
43
50
  extra_rdoc_files: []
44
-
45
- files:
51
+ files:
46
52
  - lib/couchrest/model/slug/version.rb
47
53
  - lib/couchrest/model/slug.rb
48
54
  - lib/couchrest_model_slug.rb
@@ -52,30 +58,26 @@ files:
52
58
  - README.rdoc
53
59
  homepage: https://github.com/lucasrenan/couchrest-model-slug
54
60
  licenses: []
55
-
56
61
  post_install_message:
57
62
  rdoc_options: []
58
-
59
- require_paths:
63
+ require_paths:
60
64
  - lib
61
- required_ruby_version: !ruby/object:Gem::Requirement
65
+ required_ruby_version: !ruby/object:Gem::Requirement
62
66
  none: false
63
- requirements:
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- version: "0"
67
- required_rubygems_version: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ! '>='
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ required_rubygems_version: !ruby/object:Gem::Requirement
68
72
  none: false
69
- requirements:
70
- - - ">="
71
- - !ruby/object:Gem::Version
72
- version: "0"
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
73
77
  requirements: []
74
-
75
78
  rubyforge_project:
76
- rubygems_version: 1.8.5
79
+ rubygems_version: 1.8.24
77
80
  signing_key:
78
81
  specification_version: 3
79
82
  summary: A simple gem to generate slugs using couchrest model, based on mongoid_slug.
80
83
  test_files: []
81
-