Property timestamp must be a datetime, current is unicode
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 38/100
調査の方向性
couchdbkit/schema/base.py の DocumentSchema.init 周辺と、couchdbkit/schema/properties.py の property_init、validate、to_python 周辺を読みます。示されている Base クラスと JSON ドキュメントで問題を再現し、その後、unicode の timestamp 値を読み込んでも datetime 型エラーが発生しなくなったことを確認します。
索引モデルが issue の本文から書いたものです。
説明
I've created a Document class as so:
class Base(Document):
... doc_schema = IntegerProperty(required=True)
... name = StringProperty(required=True)
... update = DateTimeProperty(required=True, auto_now=True)
... created = DateTimeProperty(required=True, auto_now_add=True)
I have some json returned by a db.get(doc_id)
{u'created': u'2012-01-07T18:17:39Z',
u'doc_schema': 0,
u'doc_type': u'test',
u'name': u'abc',
u'update': u'2012-01-07T18:17:39Z'}
I've also tried db.open_doc()
account = Base(some_json_doc)
Traceback (most recent call last):
File "", line 1, in
File "/home/user/env/local/lib/python2.7/site-packages/couchdbkit/schema/base.py", line 405, in init
DocumentSchema.init(self, _d, **kwargs)
File "/home/user/env/local/lib/python2.7/site-packages/couchdbkit/schema/base.py", line 113, in init
prop.property_init(self, value)
File "/home/user/env/local/lib/python2.7/site-packages/couchdbkit/schema/properties.py", line 95, in property_init
value = self.to_json(self.validate(value, required=False))
File "/home/user/env/local/lib/python2.7/site-packages/couchdbkit/schema/properties.py", line 304, in validate
(self.name, self.data_type.name, type(value).name))
couchdbkit.exceptions.BadValueError: Property update must be a datetime, current is unicode
having a little look at what was going on, it appears the validate method is being called before the to_python so yes it is a unicode string and not a datetime object
- 主要言語
- Python
- スター
- 261
- フォーク
- 90
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
benoitc/couchdbkit のほかの issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
benoitc/couchdbkit#181 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 35/100
benoitc/couchdbkit#196 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
benoitc/couchdbkit#194 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 30/100
benoitc/couchdbkit#193 · コメント 2 件 · リアクション 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 48/100
benoitc/couchdbkit#192 ·
benoitc/couchdbkit の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
openvinotoolkit/openvino_notebooks#3858 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
hummingbot/hummingbot-api#256 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 80/100
-
area:other help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
WingedGuardian/GENesis-AGI#4734 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
peach-mitao/peach#693 ·
メンテナーはふだん 1 日以内に返信