1
クライアントは、次のJSONを送信します:{ "ユーザー":{ "年齢+":18、 "年齢 - ":40}}私のコントローラでEctoクエリのJSONで値を渡すには?
私は、次のしている:
def procura(conn, query) do
maior = conn.params["user"]["age+"]
menor = conn.params["user"]["age-"]
query = from u in query, where: u.age > ^maior and u.age < ^menor, select: u.name
pesquisa = Repo.all query
IO.puts pesquisa
end
しかし、私コンパイラ警告を受け取りました:** (Protocol.UndefinedError) protocol Ecto.Queryable not implemented for %{}
Ectoクエリ用にJSONの値を渡すにはどうすればよいですか?
私の目標は、JSONフィールドに基づいてクエリを実行することです。 x年とy年との間にいるユーザーを検索したい 自動的に翻訳されました。
クエリの値は何ですか?あなたは '%{}'をクエリの代わりに 'procura'の第2引数として渡しているようです。また、 'from'行を' query = from u in query、... 'に変更する必要があります。 – Dogbert
procuraはアクションですか? yesの場合、queryパラメータは要求からスクラブされます。 Plsは結果としてshowでクエリのIO.inspectを試します。地図でなければなりません。アクションの場合は、接続を返す必要があります。 – Haito
こんにちは!私の目標は、JSONフィールドに基づいて検索を行うことです。 x年とy年との間にいるユーザーを検索したい。私は得られない。 –