sluggi 1.0.1 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/sluggi/generators/sluggi_generator.rb +1 -1
- data/lib/sluggi/history.rb +2 -2
- data/lib/sluggi/model.rb +2 -2
- data/lib/sluggi/version.rb +1 -1
- metadata +4 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d08b1975e1783cfe2d07bbeb7d3e45d368bd0ecaec8dabdb466cd868a2d238e0
|
4
|
+
data.tar.gz: 181ec99f375eb372f2dd3b4bb0c7e46d91f286b55178226091f4ea81893fc714
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 250f9eed155a66959bc584a5a43b161ca159733618b872f6936b25b9557aa0d0cce35a38b3cb676eb06f5c4d92f0fc4617d70339246949d486998ed4d1b27d7b
|
7
|
+
data.tar.gz: 98f3b93dd2416f574c51f2c743ee6e3b83d726358d1afe8c29ff5202227ecce53e8f254748159ac87a0ed95c292c69b6318e2f9f432b5dda8804f45191a36cff
|
@@ -6,7 +6,7 @@ require "rails/generators/active_record"
|
|
6
6
|
# Copy the migration to create the slugs table.
|
7
7
|
class SluggiGenerator < ActiveRecord::Generators::Base
|
8
8
|
argument :name, type: :string, default: "required_but_not_used"
|
9
|
-
source_root File.expand_path("
|
9
|
+
source_root File.expand_path("../migrations", __dir__)
|
10
10
|
|
11
11
|
# Copy the migration template to db/migrate.
|
12
12
|
def copy_files
|
data/lib/sluggi/history.rb
CHANGED
@@ -16,7 +16,7 @@ module Sluggi
|
|
16
16
|
|
17
17
|
module ClassMethods
|
18
18
|
def find_slug!(slug)
|
19
|
-
object =
|
19
|
+
object = find_by(slug: slug) || find_slugs(slug).first&.sluggable
|
20
20
|
unless object.is_a?(self)
|
21
21
|
raise ActiveRecord::RecordNotFound, "Couldn't find #{name} with 'slug'='#{slug}'"
|
22
22
|
end
|
@@ -41,7 +41,7 @@ module Sluggi
|
|
41
41
|
def create_slug
|
42
42
|
value = clean_slug(slug_value)
|
43
43
|
return if value.blank?
|
44
|
-
return if slugs.first
|
44
|
+
return if slugs.first&.slug == value
|
45
45
|
self.class.find_slugs(value).delete_all # revert to previous slug & put first
|
46
46
|
slugs.create(slug: value)
|
47
47
|
end
|
data/lib/sluggi/model.rb
CHANGED
@@ -5,7 +5,7 @@ module Sluggi
|
|
5
5
|
extend ActiveSupport::Concern
|
6
6
|
|
7
7
|
NOT_IMPLEMENTED_MESSAGE = "You must implement #slug_value_changed? "\
|
8
|
-
"and either #slug_value or #slug_candidates"
|
8
|
+
"and either #slug_value or #slug_candidates"
|
9
9
|
|
10
10
|
included do
|
11
11
|
before_validation :set_slug
|
@@ -18,7 +18,7 @@ module Sluggi
|
|
18
18
|
private
|
19
19
|
|
20
20
|
def clean_slug(value)
|
21
|
-
value
|
21
|
+
value&.parameterize
|
22
22
|
end
|
23
23
|
|
24
24
|
def set_slug
|
data/lib/sluggi/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sluggi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tee Parham
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-10-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -38,20 +38,6 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '5.1'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: mocha
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '1.0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '1.0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
42
|
name: rake
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -112,7 +98,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
112
98
|
requirements:
|
113
99
|
- - ">="
|
114
100
|
- !ruby/object:Gem::Version
|
115
|
-
version: 2.
|
101
|
+
version: 2.3.0
|
116
102
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
117
103
|
requirements:
|
118
104
|
- - ">="
|
@@ -120,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
120
106
|
version: '0'
|
121
107
|
requirements: []
|
122
108
|
rubyforge_project:
|
123
|
-
rubygems_version: 2.7.
|
109
|
+
rubygems_version: 2.7.7
|
124
110
|
signing_key:
|
125
111
|
specification_version: 4
|
126
112
|
summary: Rails Slug Generator
|