imyou 1.1.0 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 437f6453c5c674668419f8f5968eeb9d14836e4dac03b0894cf64c9b0f73fee4
4
- data.tar.gz: 892461025e8a962f5d4738a10d56f768c3a2ed53dcf1641a53acc8ce9b6afd58
3
+ metadata.gz: 6a4d49a6d707f6668456740d46914b28525fe4fbc30de439d74175cab255bb18
4
+ data.tar.gz: 190e35b66f217dcbef158b52a128341e2344c63a8fe0abf0a4b15d840e6d2764
5
5
  SHA512:
6
- metadata.gz: ad812533dff9b9265d46ef784f65c9f3035f8ddca8742ac3c02755e8c976bc408e7c64e49511135c03731c87d4f30e41520d85c46214d339178c3a8531c9e858
7
- data.tar.gz: 360976116e0941de8f7d5e848096bf17bcc733aa0d0de20e4a256883da665e0ea0cd44d50e63d931962629b9d2b193defbc93cbe1f7fc15cbaa7c58d58a4f634
6
+ metadata.gz: 984edff95c7922061215c9044ac0596947cc3c5b048ee2d95646aadd504133c9d79212563fd835621055c03847e26b30b68ff61eb6d64ced36a1e0b8fa4648ae
7
+ data.tar.gz: 289b82f8409c900597ea9dfe7f42aa8cb6fbf04d3de7c2dc49b088ba3f8e20b49091578268594c06f68b6285a70ceeb624c0ff1d79388cfc8d0bfc9304c51bcc
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- imyou (1.1.0)
4
+ imyou (1.1.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -36,28 +36,52 @@ To generate and run the migration just use.
36
36
 
37
37
  ```ruby
38
38
  class User < ApplicationRecord
39
- has_imyou
39
+ has_imyou
40
+ end
41
+
42
+ class Book < ApplicationRecord
43
+ has_imyou :title # add search target column
40
44
  end
41
45
 
42
46
  @user = User.new(name: 'hoge')
47
+ @book = Book.new(title: 'book')
43
48
 
44
49
  # Add nickname.
45
50
  @user.add_nickname('foo')
46
51
  @user.nicknames # => ['foo']
47
52
 
53
+ @book.add_nickname('red')
54
+ @book.nicknames # => ['red']
55
+
48
56
  # Add nicknames by Array.
49
57
  @user.nicknames = %w(foo bar baz)
50
58
  @user.nicknames # => ['foo', 'bar', 'baz']
51
59
 
60
+ @book.nicknames = %w(red green blue)
61
+ @book.nicknames # => ['red', 'green', 'blue']
62
+
52
63
  # eager_load(LEFT OUTER JOIN)
53
64
  User.with_nicknames
54
65
 
55
66
  # Search users by nickname.
67
+ User.match_by_nickname('hoge').exists? # => false
56
68
  User.match_by_nickname('baz').exists? # => true
57
69
  User.match_by_nickname('ba').exists? # => false
70
+
71
+ User.partial_match_by_nickname('ho').exists? # => true
58
72
  User.partial_match_by_nickname('baz').exists? # => true
59
73
  User.partial_match_by_nickname('ba').exists? # => true
60
74
 
75
+ # Search books by nickname.
76
+ Book.match_by_nickname('book').exists? # => true
77
+ Book.match_by_nickname('book', with_name_column: false).exists? # => false
78
+ Book.match_by_nickname('red').exists? # => true
79
+ Book.match_by_nickname('yellow').exists? # => false
80
+
81
+ Book.partial_match_by_nickname('bo').exists? # => true
82
+ Book.partial_match_by_nickname('bo', with_name_column: false).exists? # => false
83
+ Book.partial_match_by_nickname('re').exists? # => true
84
+
61
85
  # Remove nickname.
62
86
  @user.remove_nickname('foo')
63
87
  @user.nicknames # => ['bar', 'baz']
@@ -81,9 +81,13 @@ module Imyou
81
81
  end
82
82
 
83
83
  def nicknames=(new_nicknames)
84
- self.imyou_nicknames.where.not(name: new_nicknames).delete_all
85
- new_nicknames.each do |new_nickname|
86
- self.imyou_nicknames.find_or_create_by(name: new_nickname)
84
+ if new_nicknames.blank?
85
+ self.imyou_nicknames.delete_all
86
+ else
87
+ self.imyou_nicknames.where.not(name: new_nicknames).delete_all
88
+ new_nicknames.each do |new_nickname|
89
+ self.imyou_nicknames.find_or_create_by(name: new_nickname)
90
+ end
87
91
  end
88
92
  end
89
93
  end
@@ -1,3 +1,3 @@
1
1
  module Imyou
2
- VERSION = "1.1.0"
2
+ VERSION = "1.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: imyou
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - patorash
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-14 00:00:00.000000000 Z
11
+ date: 2018-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler