0

peewee で select() および where() 関数を使用して Postgresql DB でハッシュ化されたパスワードを取得しようとしていますが、クラス TypeError を取得しています。電子メールはjsonから受信され、デコードされます。

関数:

person_decode = person_string.decode("UTF-8")
person_json = json.loads(person_decode)
personemail = person_json["email"]
hashed = personmodel.Person.select(personmodel.Person.password).where(personmodel.Person.email == personemail)

personmodel.Person:

class Person(basemodel.BaseExtModel):
    email = TextField(primary_key=True)
    password = TextField()

print(hashed) を実行すると、次のように出力されます。

<class 'lib.models.personmodel.Person'> SELECT "t1"."password" FROM "person" AS t1 WHERE ("t1"."email" = %s) ['correctemail@email.com']

Postico でクエリを実行すると %s が渡されませんが、%s を削除して代わりにメールを挿入すると正常に実行されます。select 関数と where 関数のパラメーターに何か問題がありますか?

前もって感謝します。

4

1 に答える 1

0

トレースバックエラーを含めていただけると助かります。そのままでは、何が問題なのかを判断することは不可能です。

于 2016-03-02T19:20:41.810 に答える