ashok
I have a product listing page in which I want to give a search product option if the user enters any search term for product name or product price then the search term should be included in the final query otherwise I want to show full product list.
The query is written in my module to fetch all product having word “Widget” in the product name and product price less than $10 is as shown below:
def list_products(params) do
query = from p in MyStore.Products.Product,
where: like(p.name,"%Widget%"),
where: p.price <= 10,
order_by: [
desc: p.id
],
select: struct(
p,
[:id, :name, :quantity, :inserted_at, :updated_at]
)
products = MyStore.Repo.paginate(query,params)
end
Now if the user enters Product name or Product price in the Product filter form I want to include that variable in my query instead of static where clause I have passed in above code. I need the “where” clause optional if user wants to filter product list then “where” clause should be added otherwise it should show the complete product list. It will be great if someone provides me the correct demo code based on the above query.
Trending in Questions
Other Trending Topics
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
- #blog-post
- #elixir-ls
- #ai
- #elixirconf-us
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #hex
- #security
- #metaprogramming










Showing Posts 1 to 5- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
kokolegorille
The good way is to reduce a criteria list into a query…
ashok
It will be helpful if you provide me the code how to achieve for above code as I am learning so there are lots of new things for me
kokolegorille
Something like this… (it’s related to a User)
Then You could do…
ashok
How to write the condition if there is no filter I mean if user has landed to product listing page but not applied any filter I think in that case it will not work.
How can I pass order by clause while using reduce criteria ?
kokolegorille
It’s optional… If You don’t pass criteria, it will not be used
You can also pass an order parameter.