Comments (9)
Hi, thanks for reporting. Just trying to reproduce, but my test case is running fine:
def test_wildcard
expected = create(:product, :title => "Expected")
rejected = create(:product, :title => "Rejected")
results = Product.search("title:Expec*")
assert_includes results, expected
refute_includes results, rejected
end
and generates
... WHERE (MATCH(`products`.`title`) AGAINST('Expec*' IN BOOLEAN MODE))
Could you please provide the full search cop model layout, search cop query and sql query generated?
Thanks in advance
Benjamin
from search_cop.
In your test case you've explicitly passed *
to the search function. If the search cop model used LIKE
instead, you wouldn't need to add the *
, it would automatically append a %
.
from search_cop.
Ah, ok. However, this behaviour is desired. Fulltext search usually works this way and if you don't want it, simply do not use the fulltext feature.
from search_cop.
fulltext has the benefit of finding any word with that prefix though, right? LIKE '%foo'
only works on the first word.
from search_cop.
That's true. However, the use cases seem to be limited to me. Maybe you can give examples. I'd be ok, though, with an option option :title, :fulltext => true, :fulltext_wildcard => true
or similar to opt this feature in.
from search_cop.
That feature would work great for me. I'm a little skeptical about splitting on spaces and adding asterisks -- probably there should be escaping or something.
My use case is simple keyword (prefix) search, where LIKE
word work but do a full table scan.
from search_cop.
Do you feel like creating a PR?
from search_cop.
This would be nice to have. It's available in pg_search
from search_cop.
I've added this feature in branch 23_fulltext_right_wildcard.
You're very welcome to try it out already.
from search_cop.
Related Issues (20)
- globalize with search_cop - unknown attribute HOT 2
- Ignoring MySQL stop words for full-text search HOT 5
- Support for PostgreSQL ENUM HOT 3
- Matching multiple in a has_many HOT 1
- multiple where conditions and concatenated with AND HOT 3
- Attribute (case insensitive / ILIKE) HOT 3
- generator for attribute options HOT 3
- Error when using with non-standard pluralization in class name HOT 2
- DEPRECATION WARNING HOT 2
- How to handle special search logic / virtual attributes HOT 4
- Suggestion: Option for `exact: true` (or `right_wildcard: false`) HOT 1
- Can search_cop work with Postgres hstore? HOT 8
- Suggestion: Add support for sort in the free text search HOT 4
- Searching for empty or non empty with the free text expression HOT 2
- RAILS 6 - Search in ActionText HOT 3
- Search word that include % does not work correctly HOT 2
- Ability to apply Custom Operators or Options to entire project HOT 1
- ActiveRecord::ConfigurationError in v1.2.1 HOT 10
- README error? HOT 6
- Words containing brackets HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from search_cop.