redis-search 0.6.1 → 0.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/redis/search/base.rb +18 -8
- metadata +9 -9
data/lib/redis/search/base.rb
CHANGED
@@ -31,7 +31,7 @@ class Redis
|
|
31
31
|
exts
|
32
32
|
end
|
33
33
|
|
34
|
-
after_create :redis_search_index_create
|
34
|
+
# after_create :redis_search_index_create
|
35
35
|
def redis_search_index_create
|
36
36
|
s = Search::Index.new(:title => self.#{title_field},
|
37
37
|
:id => self.id,
|
@@ -44,19 +44,18 @@ class Redis
|
|
44
44
|
s = nil
|
45
45
|
end
|
46
46
|
|
47
|
-
before_destroy :
|
48
|
-
def
|
47
|
+
before_destroy :redis_search_index_destroy
|
48
|
+
def redis_search_index_destroy
|
49
49
|
Search::Index.remove(:id => self.id, :title => self.#{title_field}, :type => self.class.to_s)
|
50
50
|
end
|
51
|
-
|
52
|
-
|
53
|
-
def redis_search_index_update
|
51
|
+
|
52
|
+
def redis_search_index_need_reindex
|
54
53
|
index_fields_changed = false
|
55
54
|
#{ext_fields.inspect}.each do |f|
|
56
55
|
next if f.to_s == "id"
|
57
56
|
field_method = f.to_s + "_changed?"
|
58
57
|
if !self.methods.include?(field_method.to_sym)
|
59
|
-
|
58
|
+
Search.warn("#{self.class.name} model reindex on update need "+field_method+" method.")
|
60
59
|
next
|
61
60
|
end
|
62
61
|
if instance_eval(field_method)
|
@@ -69,8 +68,19 @@ class Redis
|
|
69
68
|
end
|
70
69
|
rescue
|
71
70
|
end
|
72
|
-
|
71
|
+
return index_fields_changed
|
72
|
+
end
|
73
|
+
|
74
|
+
after_update :redis_search_index_remove
|
75
|
+
def redis_search_index_remove
|
76
|
+
if self.redis_search_index_need_reindex
|
73
77
|
Search::Index.remove(:id => self.id, :title => self.#{title_field}_was, :type => self.class.to_s)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
after_save :redis_search_index_update
|
82
|
+
def redis_search_index_update
|
83
|
+
if self.redis_search_index_need_reindex
|
74
84
|
self.redis_search_index_create
|
75
85
|
end
|
76
86
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redis-search
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-
|
12
|
+
date: 2011-10-06 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: chinese_pinyin
|
16
|
-
requirement: &
|
16
|
+
requirement: &70317013355480 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.3.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70317013355480
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rmmseg-cpp-huacnlee
|
27
|
-
requirement: &
|
27
|
+
requirement: &70317013355000 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 0.2.8
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70317013355000
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: redis
|
38
|
-
requirement: &
|
38
|
+
requirement: &70317013354520 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: 2.1.1
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70317013354520
|
47
47
|
description: High performance real-time search (Support Chinese), index in Redis for
|
48
48
|
Rails application.
|
49
49
|
email:
|
@@ -80,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
80
80
|
version: 1.3.6
|
81
81
|
requirements: []
|
82
82
|
rubyforge_project:
|
83
|
-
rubygems_version: 1.8.
|
83
|
+
rubygems_version: 1.8.10
|
84
84
|
signing_key:
|
85
85
|
specification_version: 3
|
86
86
|
summary: High performance real-time search (Support Chinese), index in Redis for Rails
|