fix: inspectdb not match data type 'DOUBLE' and 'CHAR' for MySQL

* increase:
1. Inspectdb adds DECIMAL, DOUBLE, CHAR, TIME data type matching;
2. Add exception handling, avoid the need to manually create the entire table because a certain data type is not supported.

* fix: aerich inspectdb raise KeyError for double in MySQL

* feat: support command `python -m aerich`

* docs: update changelog

* tests: verify mysql inspectdb for float field

* fix mysql uuid field inspect to be charfield

* refactor: use `db_index=True` instead of `index=True` for inspectdb

* docs: update changelog

---------

Co-authored-by: xiechen <xiechen@jinse.com>
Co-authored-by: Waket Zheng <waketzheng@gmail.com>
This commit is contained in:
程序猿过家家
2025-02-19 16:04:15 +08:00
committed by GitHub
parent 557271c8e1
commit c35282c2a3
9 changed files with 104 additions and 62 deletions

View File

@@ -93,6 +93,8 @@ class Product(Model):
)
pic = fields.CharField(max_length=200)
body = fields.TextField()
price = fields.FloatField(null=True)
no = fields.UUIDField(db_index=True)
created_at = fields.DatetimeField(auto_now_add=True)
is_deleted = fields.BooleanField(default=False)