This repository was archived by the owner on Jan 9, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 3 files changed +18
-0
lines changed Expand file tree Collapse file tree 3 files changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -20,6 +20,13 @@ public function buildWhereRawString(Builder $builder)
20
20
return $ queryString ;
21
21
}
22
22
23
+ public function buildSelectColumns (Builder $ builder )
24
+ {
25
+ $ indexFields = implode (', ' , $ this ->modelService ->setModel ($ builder ->model )->getFullTextIndexFields ());
26
+
27
+ return "*, MATCH( $ indexFields) AGAINST(? IN NATURAL LANGUAGE MODE) AS relevance " ;
28
+ }
29
+
23
30
public function buildParams (Builder $ builder )
24
31
{
25
32
$ this ->whereParams [] = $ builder ->query ;
Original file line number Diff line number Diff line change @@ -25,6 +25,13 @@ public function buildWhereRawString(Builder $builder)
25
25
return $ queryString ;
26
26
}
27
27
28
+ public function buildSelectColumns (Builder $ builder )
29
+ {
30
+ $ indexFields = implode (', ' , $ this ->modelService ->setModel ($ builder ->model )->getFullTextIndexFields ());
31
+
32
+ return "*, MATCH( $ indexFields) AGAINST(? IN NATURAL LANGUAGE MODE) AS relevance " ;
33
+ }
34
+
28
35
public function buildParams (Builder $ builder )
29
36
{
30
37
$ this ->whereParams [] = $ builder ->query ;
Original file line number Diff line number Diff line change 4
4
5
5
use Yab \MySQLScout \Engines \Modes \ModeContainer ;
6
6
use Illuminate \Database \Eloquent \Collection ;
7
+ use Illuminate \Support \Facades \DB ;
7
8
use Laravel \Scout \Builder ;
8
9
use Laravel \Scout \Engines \Engine ;
9
10
@@ -65,6 +66,9 @@ public function search(Builder $builder)
65
66
66
67
$ model = $ builder ->model ;
67
68
$ query = $ model ::whereRaw ($ whereRawString , $ params );
69
+ if ($ mode ->isFullText ()) {
70
+ $ query = $ query ->selectRaw (DB ::raw ($ mode ->buildSelectColumns ($ builder )), $ params );
71
+ }
68
72
69
73
if ($ builder ->callback ){
70
74
$ query = call_user_func ($ builder ->callback , $ query , $ this );
You can’t perform that action at this time.
0 commit comments