end
def fetch_paginated(query, %{"total" => true} = params, :offset, table_binding) do
- total = Repo.aggregate(query, :count, :id)
+ total =
+ query
+ |> Ecto.Query.exclude(:left_join)
+ |> Repo.aggregate(:count, :id)
%{
total: total,
since_id: :string,
max_id: :string,
offset: :integer,
- limit: :integer
+ limit: :integer,
+ skip_order: :boolean
}
params =
where(query, [{q, table_position(query, table_binding)}], q.id < ^max_id)
end
+ defp restrict(query, :order, %{skip_order: true}, _), do: query
+
defp restrict(query, :order, %{min_id: _}, table_binding) do
order_by(
query,