mongoid-elasticsearch 0.3.8 → 0.3.9
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1b17ce3ea177fb613d714d573fc83a015970df61
|
4
|
+
data.tar.gz: 2cfef5f383d8b64631d068f8bc2f40823957eeb6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ca428b09d8d6821360b3bd47f506fa09f52988d64231a86c2d925a6b2702d3da42ede2862bc78d6f3b2df550a2fe28f72db1e7f3f293241ee10e1966f3cb117c
|
7
|
+
data.tar.gz: 26f366aef339cd4a7d55823beb6090128c25d86f9028758400c85251121a3eea5442b486d3e7f490dcc44b2095913dfb314892d37efb4a7720cf827c37dd117b
|
@@ -148,6 +148,11 @@ module Mongoid
|
|
148
148
|
hits.map do |h|
|
149
149
|
klass = find_klass(h['_type'])
|
150
150
|
source = h.delete('_source')
|
151
|
+
source.each do |k,v|
|
152
|
+
if v.is_a?(Hash) && v.has_key?("$oid")
|
153
|
+
source[k] = BSON::ObjectId.from_string(v["$oid"])
|
154
|
+
end
|
155
|
+
end
|
151
156
|
begin
|
152
157
|
m = klass.new(h.merge(source))
|
153
158
|
rescue Mongoid::Errors::UnknownAttribute
|
data/spec/models/post.rb
CHANGED
@@ -4,10 +4,12 @@ class Post
|
|
4
4
|
field :name, type: String
|
5
5
|
field :content, type: String
|
6
6
|
|
7
|
+
field :my_object_id, type: BSON::ObjectId
|
8
|
+
|
7
9
|
include Mongoid::Elasticsearch
|
8
10
|
elasticsearch!
|
9
11
|
def as_indexed_json
|
10
|
-
{name: name, content: content}
|
12
|
+
{name: name, content: content, my_object_id: my_object_id}
|
11
13
|
end
|
12
14
|
end
|
13
15
|
|
@@ -44,7 +44,9 @@ describe Article do
|
|
44
44
|
@article_1 = Article.create!(name: 'test article name likes', tags: 'likely')
|
45
45
|
@article_2 = Article.create!(name: 'tests likely an another article title')
|
46
46
|
@article_3 = Article.create!(name: 'a strange name for this stuff')
|
47
|
+
@post_1 = Post.create!(name: 'object_id', my_object_id: BSON::ObjectId.new)
|
47
48
|
Article.es.index.refresh
|
49
|
+
Post.es.index.refresh
|
48
50
|
end
|
49
51
|
|
50
52
|
it 'searches and returns models' do
|
@@ -72,6 +74,12 @@ describe Article do
|
|
72
74
|
expect(Article).to_not have_received(:find)
|
73
75
|
end
|
74
76
|
|
77
|
+
it 'restores BSON::ObjectId with wrapper :model' do
|
78
|
+
results = Post.es.search 'object_id'
|
79
|
+
results.first.my_object_id.should be_kind_of(BSON::ObjectId)
|
80
|
+
results.first.my_object_id.should eq(@post_1.my_object_id)
|
81
|
+
end
|
82
|
+
|
75
83
|
|
76
84
|
if Article.es.completion_supported?
|
77
85
|
it 'completion' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongoid-elasticsearch
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- glebtv
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-12-
|
11
|
+
date: 2013-12-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mongoid
|