fix: search
This commit is contained in:
@@ -280,25 +280,31 @@ impl Post {
|
|||||||
query = match search_mode {
|
query = match search_mode {
|
||||||
0 => {
|
0 => {
|
||||||
pat = format!("%#{}%", &search_text2);
|
pat = format!("%#{}%", &search_text2);
|
||||||
query
|
query.filter(
|
||||||
.filter(posts::cw.eq(&search_text))
|
posts::cw
|
||||||
.or_filter(posts::cw.eq(format!("#{}", &search_text)))
|
.eq(&search_text)
|
||||||
.or_filter(posts::content.like(&pat))
|
.or(posts::cw.eq(format!("#{}", &search_text)))
|
||||||
.or_filter(
|
.or(posts::content.like(&pat))
|
||||||
comments::content
|
.or(comments::content
|
||||||
.like(&pat)
|
.like(&pat)
|
||||||
.and(comments::is_deleted.eq(false)),
|
.and(comments::is_deleted.eq(false))),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
1 => {
|
1 => {
|
||||||
pat = format!("%{}%", search_text2.replace(" ", "%"));
|
pat = format!("%{}%", search_text2.replace(" ", "%"));
|
||||||
query
|
query
|
||||||
.filter(posts::content.like(&pat).or(comments::content.like(&pat)))
|
.filter(
|
||||||
|
posts::content.like(&pat).or(comments::content
|
||||||
|
.like(&pat)
|
||||||
|
.and(comments::is_deleted.eq(false))),
|
||||||
|
)
|
||||||
.filter(posts::allow_search.eq(true))
|
.filter(posts::allow_search.eq(true))
|
||||||
}
|
}
|
||||||
2 => query
|
2 => query.filter(
|
||||||
.filter(posts::author_title.eq(&search_text))
|
posts::author_title
|
||||||
.or_filter(comments::author_title.eq(&search_text)),
|
.eq(&search_text)
|
||||||
|
.or(comments::author_title.eq(&search_text)),
|
||||||
|
),
|
||||||
_ => panic!("Wrong search mode!"),
|
_ => panic!("Wrong search mode!"),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user