sezaru

sezaru

I have this filter in my action:

|> Ash.Query.filter(organization_id == ^actor.organization_id)

The issue with it is that organization_id can be null, so when that happen, I will get this warning:

warning: Comparing values with `nil` will always return `false`. Use `is_nil/1` instead. In: `organization_id == nil`
  (core 1.95.1) lib/core/marketplace/markets/property/actions/retrades_required.ex:12: Core.Marketplace.Markets.Property.Actions.RetradesRequired.run/2
  (ash 3.4.18) lib/ash/actions/action.ex:129: Ash.Actions.Action.run/3
  (ash 3.4.18) lib/ash.ex:1376: Ash.run_action/2
  (ash 3.4.18) lib/ash.ex:1347: Ash.run_action!/2
  (core 1.95.1) lib/core_web/live/admin/dashboard_live.ex:131: CoreWeb.Admin.DashboardLive.do_load_card_data/2
  (phoenix_live_view 0.20.17) lib/phoenix_live_view/async.ex:220: Phoenix.LiveView.Async.do_async/5
  (elixir 1.17.2) lib/task/supervised.ex:101: Task.Supervised.invoke_mfa/2

How can I rewrite that so I will stop getting this warning?

Showing Posts 1 to 3

zachdaniel

zachdaniel

Creator of Ash

What do you want to happen when actor.organization_id is nil? Do you want nothing to show up? Or do you want everything to show up?

sezaru

sezaru OP

I want to still compare them and return if both are nil.

Something like this:

is_nil(organization_id) == is_nil(^actor.organization_id) or organization_id == ^actor.organization_id
zachdaniel

zachdaniel

Creator of Ash

How about something like this?

|> then(fn query -> 
  if is_nil(actor.organization_id) do
    Ash.Query.filter(query, is_nil(organization_id))
  else
    Ash.Query.filter(query, organization_id == ^actor.organization_id)
  end
end)
— All posts loaded —

Where Next? Top

Trending in Questions Top

katta
I having some trouble figuring out if I have set myself too strict of standards for my production server. Currently I can handle 75% of r...
New
nseaSeb
Hello, I know there is an approach for handling lists that allows for optimized traversal, but I can’t recall the specific method (somet...
New
brecabral
Documentation While reading the Scoped Routes section, I noticed that the documentation currently refers to a problem without explainin...
New
kpanic
Hi everyone, I am toying with the idea of building a “match maker” for giving personal help to people that wants to start coding. I sta...
New
velrest
So my question is quite simple and i have found no conclusive answer on forum, google or AI. Should we use :erlang.float for Integer to ...
New
asweet-confluent
I recently noticed that Elixir’s Logger defaults its primary log level to :debug when no :logger, :level application configuration is pre...
New
apz
I’m new to elixir and just tried to install the elixirLS extension for VScode(ium) and it is throwing some errors that I would like help ...
New

Other Trending Topics Top

GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
mhanberg
Hi everyone! The first release candidate for the Expert language server project is now available! We’ve published a press release detai...
New
budgie
A little off-topic, but I feel like people here have a good head on their shoulders. I used to be quite good at making software. Was luc...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews