この機能:
defp entries(query, page_number, page_size) do
offset = page_size * (page_number - 1)
query
|> limit([_], ^page_size) # error
|> offset([_], ^offset)
|> Repo.all
end
例外があります:
cannot use ^pg_size outside of match clauses
なぜそれを修正するのですか?
これは通常、Ecto.Query
から適切なマクロをインポートしていないことを示しています。
これを試して:
query
|> limit(page_size)
|> offset(offset)
|> Repo.all
このエラーの別の考えられる原因は、スペルミスの単語です。私の場合はform
ではなくfrom
でした。
^(ピン演算子- https://hexdocs.pm/elixir/Kernel.SpecialForms.html )を使用する必要があります
query |> limit(^ page_size) |> offset(^ v_offset)#オフセット変数がEctoのオフセット関数をオーバーライドするかどうかわかりません | > Repo.all