easy_solr 0.0.2 → 0.0.3

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/easy_solr/queryer.rb +20 -8
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 29b01cc093f40d89a9d0f19e1da4a44e9c7335b4
4
- data.tar.gz: 1aaa68fcc6ae97f1c136f3ff004615deb599ecf4
3
+ metadata.gz: 583dd9d2f7d895485a6c1d0df29852dff069dcde
4
+ data.tar.gz: 2bb3c3beb640ef3c0750981a54a6ea9114a98f3c
5
5
  SHA512:
6
- metadata.gz: d6e80eb73d0d6139736fa33007c2428ada1b6d755d38e8072f0b4f6d90d9bfd10843103d8675c1df6224d3b315592bf04cf9b2b8b50efa7f76ebea5fef9a1f14
7
- data.tar.gz: 95a222de96d874342762bc5c7d15a9a1e3d027fe9061d1079c9320806e895994d85fa82aa309ca160673997b001120abd55b3fc35b8c7c6b9730d9c26d873987
6
+ metadata.gz: a9cea2972cf56973eab33bfefd7d701fc659e9f03ea7064adb8aa2ed2e0d8ebe4f78fbf481c202d248b6788b8d060323151356d5939043652d8ce688f830133b
7
+ data.tar.gz: 0ae6d00e0dcc52a3ae5dd2778d1a0ce495c4fc956ceddddf936a03755c15f58fdabbffd6ed30040a74c80381e688fb617bc166acedb7c2a50011a1db07f7d94a
@@ -5,13 +5,14 @@ module EasySolr
5
5
  include ::EasySolr::ResultItem
6
6
  include ::EasySolr::Translate
7
7
 
8
- attr_accessor :solr_settings
9
-
10
- def initialize(links, r_settings)
11
- @solr_settings = r_settings
8
+ attr_accessor :solr_settings, :client_class_name
12
9
 
10
+ def initialize(client_class_name)
11
+ nn_object = Object.const_get(client_class_name)
12
+ @client_class_name = nn_object.table_name
13
+ @solr_settings = nn_object::SOLR_SEVICE_CONFIG
14
+ @expr.nn_custom_links = nn_object::LINKS
13
15
  @expr = ::EasySolr::Expressions.new
14
- @expr.nn_custom_links = links
15
16
  end
16
17
 
17
18
  ##
@@ -19,7 +20,7 @@ module EasySolr
19
20
  #
20
21
  # 根据所有生成的信息 执行 Solr 模糊查询
21
22
  #
22
- def solr_perform
23
+ def perform
23
24
  solr_str = @expr.query_string_for_solr
24
25
 
25
26
  solr_params = { :q => solr_str, :rows => 10 }
@@ -64,8 +65,19 @@ module EasySolr
64
65
  ## 2、solr_pri_key || mysql_pri_key
65
66
  break_down(@expr.nn_custom_links)
66
67
 
67
- pri_ids = solr_perform.map{|_item| _item[solr_pri_key].to_i}
68
- scope.where(" #{ mysql_pri_key } IN (?) ", pri_ids)
68
+ pri_ids = self.perform.map{|_item| _item[solr_pri_key].to_i}
69
+ scope.where(" #{ client_class_name }.#{ mysql_pri_key } IN (?) ", pri_ids)
70
+ end
71
+
72
+ ##
73
+ # ==== Description
74
+ #
75
+ # 根据主键生成 scope 的字符串形式
76
+ #
77
+ def generate_scope_str(scope)
78
+ break_down(@expr.nn_custom_links)
79
+
80
+ " #{ client_class_name }.#{ mysql_pri_key } IN (?) "
69
81
  end
70
82
 
71
83
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easy_solr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hao Wang