danielgtaylor / danielgtaylor/python-betterproto
datetime support in .from_dict()
- Ngôn ngữ chính
- Python
- Star
- 1.8k
- Fork
- 234
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Good day, assuming I have
`d = {'date_of_birth': datetime.datetime(2000)}`
and a `proto` including
`date_of_birth: Timestamp`:
When `proto.from_dict(d)` is called, it assumes the value of date_of_birth is an ISO string and does not consider that it may already be a `datetime.datetime`
I refer to your `__init__.py` L799-803:
```
elif isinstance(v, datetime):
v = datetime.fromisoformat(
value[key].replace("Z", "+00:00")
)
setattr(self, field.name, v)
```
This should check if `value[key]` is already an instance of `datetime.datetime` and assign it directly, shouldn't it?
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu trong __init__.py quanh các dòng 799-803 và theo dõi cách xử lý .from_dict() đối với các trường Timestamp. Xác minh hành vi cho cả một giá trị datetime.datetime hiện có và một chuỗi ở định dạng ISO; được xem là hoàn tất khi các đầu vào datetime được gán mà không chuyển đổi thành chuỗi, trong khi các đầu vào chuỗi vẫn giữ nguyên hành vi parsing hiện tại.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- backend
- Loại issue
- Lỗi
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức phù hợp với người mới
- 35/100