gordoneliel
Hi!
I’m trying to filter by similarity eg, name like “eliel” where name could be “Eliel Gordon”.
Is there a way to do this with the filters on ash_json_api or do I have to create my own custom query to handle this?
So far trying filter[name]=eliel only does exact matches
Trending in Questions
Hello!
Suppose you are building workflow (order / task / payment) processing system with the following requirements:
Each workflow con...
New
Hey guys,
I’ve got a huge CSV ( around 10 GB ) that needs to be processed hourly
Do you guys have any suggestions what is the best prac...
New
Hello!
Could someone please give me a help/sample code, how to delete a file from s3 using waffle/waffle_ecto from Phoenix app.
I creat...
New
I have what I’ve heard referred to as a “lookup table” in my database. This is a way of assigning codes to common values. One common lo...
New
Hello,
I’m developing a online persistent chat system (what’s app) like using elixir/dynamodb/aws for a mobile app(flutter).
The diffic...
New
What approach to take when sending live updates to “random” users Hi! I have a question, I have a little chat app, and when I create a DM...
New
I think I’ve found a small improvement I could contribute to <%= web_namespace %>.CoreComponents (installer/templates/phx_web/compo...
New
Other Trending Topics
Hobbes is a low-level distributed database for the Elixir programming language.
Hobbes provides a simple, safe, and scalable storage lay...
New
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve.
They are GUI (Emerge) and State management (S...
New
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
There are three potential reasons for members of this forum to have a look at https://vutuv.de
You are tired or annoyed of LinkedIn.
Yo...
New
ICal is a library for interacting with iCalendar data. It parses iCalendars into typed Elixir structs via ICal.from_ics, and can prepare ...
New
Latest Ash Threads
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #blog-post
- #ai
- #phoenix_html
- #elixirconf-us
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #hex
- #security
- #metaprogramming










Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
zachdaniel
What you’d need to do to expose custom filters is to add them as calculations. I realized
ash_json_apihad no good way to accept calculation inputs, so I’ve added it as an available key when building a filter from input on a field. This is currently onashmainbranch. I haven’t documented it, but honestly we need a whole guide on building filters from input. Given a calculation like this:filter[name_matches][input][search]=foowould do it, which is equivalent tofilter[name_matches][input][search]=true&filter[name_matches][eq]=true.gordoneliel
Yeah I often get lost when trying to figure out how to query/filter from json_api in general, the spec isn’t detailed enough either so it makes it really difficult.
gordoneliel
Hey @zachdaniel , following up on this. How do you hook up the calculation to a read action?
zachdaniel
Hook it up in what way? Calculations can be loaded, or they can be filtered on like attributes that kind of thing.
gordoneliel
I mean I have first_name and last_name fields, I would like to perform the similarity search you have above in a read action.
I tried loading it with this read action:
but gettin this error:
zachdaniel
Ah, right, so loading and filtering are unrelated.
gordoneliel
That worked! Another question on calculations…
Does this work on other calculated fields? For example, I have a
first_nameandlast_namefield, but afull_namecalculation. Do I have to store thefull_namefor this to work? Or can I compose thetrigram_similarityon multiple fields?As far as I remember, the trigram similarity works by creating trigrams of the stored fields? Not sure if calculations would work here
zachdaniel
Calculations will work
However, you may find that you want to create some indexes on things like that.
gordoneliel
Thanks @zachdaniel. I wasnt able to get it to work on the full name field with calculations yet (search results were off/ not showing up), but I added this index:
And searched with:
When I get the full_name calculations working I’ll follow up in case anyone (or myself) needs this in the future

zachdaniel
Interesting…what happens when you do it with the full name field? Do you get an error?