2017-11-21 1 views
-1

Djangoを使用してDBに新しいTransactionオブジェクトを登録しようとしていますが、実行しようとするとTypeError: expected string or bytes-like objectが表示されますuser_id = user.id理由を理解できませんこれは、新しい銀行オブジェクトを登録する際に同じ手順を実行するためです(下の図に示すように)。私はデバッグしようとしましたが、ローカル変数が正しい値を持っています。また、user.idをstringまたはintでキャストしようとしましたが、どれもうまくいきませんでした。 tracebackconsole errorcreate Transaction methodcreate Bank method models.pyTypeError:予期される文字列またはバイト状のオブジェクトUser.id

+0

問題はどこから来ていますか?トレースバックを投稿してください。移行の問題ですか? – hansTheFranz

+0

StackOverflowに関するいくつかの問題がありました –

+0

@hansTheFranzトレースバックを確認するためのリンクを追加しました。ありがとうございました –

答えて

0

まず、イメージとしてのコードやエラーを投稿しないでください。彼らはテキストです、彼らは質問にテキストとして投稿する必要があります。

しかし、エラーがユーザーにあることを示唆するスニペットのいずれにも表示されません。その行はおそらくその複数行の呼び出しで最後に強調表示されている可能性があります。

むしろ、エラーがdate.todayを参考にすることになります - それはdatetime.dateクラスの場合、todayはあなたが呼び出す必要があります方法で、次のとおりです。

Transaction.objects.create(date=date.today(), ...) 

あるいは、そのフィールドは、Aがあるので、とにかく、作成呼び出しからdate属性を除外することができます。

関連する問題