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
-1
A
答えて
0
まず、イメージとしてのコードやエラーを投稿しないでください。彼らはテキストです、彼らは質問にテキストとして投稿する必要があります。
しかし、エラーがユーザーにあることを示唆するスニペットのいずれにも表示されません。その行はおそらくその複数行の呼び出しで最後に強調表示されている可能性があります。
むしろ、エラーがdate.today
を参考にすることになります - それはdatetime.date
クラスの場合、today
はあなたが呼び出す必要があります方法で、次のとおりです。
Transaction.objects.create(date=date.today(), ...)
あるいは、そのフィールドは、Aがあるので、とにかく、作成呼び出しからdate
属性を除外することができます。
問題はどこから来ていますか?トレースバックを投稿してください。移行の問題ですか? – hansTheFranz
StackOverflowに関するいくつかの問題がありました –
@hansTheFranzトレースバックを確認するためのリンクを追加しました。ありがとうございました –