UUID

2016-05-06 7 views
0

私はエクト2.0.0-rc.4を使用していると私は動作しませんでしたこのクエリを行っているとのエクト2.0を照会する方法UUID

def users do 
    Repo.all(
    from u in User, 
    where: u.id == "93fd15fb-fe21-4a59-813d-f80447417a23", 
    select: u 
) 
end 

idはデータベースエラーそれで一つです{:OK、ID}ショーはまた、変換

** (Postgrex.Error) ERROR (character_not_in_repertoire): invalid byte sequence for encoding "UTF8": 0x93 
[debug] QUERY ERROR db=8.2ms queue=0.2ms 
SELECT u0."id", u0."full_name", u0."email", u0."encrypted_password", u0."settings", u0."organizations", u0."inserted_at", u0."updated_at" FROM "users" AS u0 WHERE (u0."id" = '��^U��!JY�=�^DGAz#') [] 
    (ecto) lib/ecto/adapters/sql.ex:395: Ecto.Adapters.SQL.execute_and_cache/7 
    (ecto) lib/ecto/repo/queryable.ex:127: Ecto.Repo.Queryable.execute/5 
    (ecto) lib/ecto/repo/queryable.ex:40: Ecto.Repo.Queryable.all/4 

試みたれるビット列とquery u.id == ^idに= Ecto.UUID.dump "93fd15fb-fe21-4a59-813d-f80447417a23を" しかし

されなかったワーク・これとエクト問題。

+0

あなたは 'Repo.get(ユーザー、 "93fd15fb-fe21-4a59-813d-f80447417a23")を使用して'しようとしています。これはecto 1で動作し、v2のドキュメントを見れば同じように見えます。 –

答えて

0

私の間違いでした。ちょうど私のモデルに次のインポートを追加するために必要な(すなわち:import Ecto.Query):

def all(org_id) do 
    Repo.all(
     from l in Ledger, 
     where: l.organization_id == ^org_id 
    ) 
    end