mirror of
https://github.com/fastapi/sqlmodel.git
synced 2026-01-06 01:19:50 -06:00
🔧 Update config with new pymdown extensions (#712)
* 🔧 Update config with new pymdown extensions * 📝 Update admonition blocks syntax * 📝 Update syntax for tabs with new pymdown extensions
This commit is contained in:
committed by
GitHub
parent
71baff6015
commit
a95bd3873d
@@ -21,15 +21,21 @@ In most cases this would probably not be a problem, for example measuring views
|
||||
|
||||
Pydantic has special support for `Decimal` types using the <a href="https://pydantic-docs.helpmanual.io/usage/types/#arguments-to-condecimal" class="external-link" target="_blank">`condecimal()` special function</a>.
|
||||
|
||||
!!! tip
|
||||
Pydantic 1.9, that will be released soon, has improved support for `Decimal` types, without needing to use the `condecimal()` function.
|
||||
/// tip
|
||||
|
||||
But meanwhile, you can already use this feature with `condecimal()` in **SQLModel** it as it's explained here.
|
||||
Pydantic 1.9, that will be released soon, has improved support for `Decimal` types, without needing to use the `condecimal()` function.
|
||||
|
||||
But meanwhile, you can already use this feature with `condecimal()` in **SQLModel** it as it's explained here.
|
||||
|
||||
///
|
||||
|
||||
When you use `condecimal()` you can specify the number of digits and decimal places to support. They will be validated by Pydantic (for example when using FastAPI) and the same information will also be used for the database columns.
|
||||
|
||||
!!! info
|
||||
For the database, **SQLModel** will use <a href="https://docs.sqlalchemy.org/en/14/core/type_basics.html#sqlalchemy.types.DECIMAL" class="external-link" target="_blank">SQLAlchemy's `DECIMAL` type</a>.
|
||||
/// info
|
||||
|
||||
For the database, **SQLModel** will use <a href="https://docs.sqlalchemy.org/en/14/core/type_basics.html#sqlalchemy.types.DECIMAL" class="external-link" target="_blank">SQLAlchemy's `DECIMAL` type</a>.
|
||||
|
||||
///
|
||||
|
||||
## Decimals in SQLModel
|
||||
|
||||
@@ -72,8 +78,11 @@ We are also saying that the number of decimal places (to the right of the decima
|
||||
* `123`
|
||||
* Even though this number doesn't have any decimals, we still have 3 places saved for them, which means that we can **only use 2 places** for the **integer part**, and this number has 3 integer digits. So, the allowed number of integer digits is `max_digits` - `decimal_places` = 2.
|
||||
|
||||
!!! tip
|
||||
Make sure you adjust the number of digits and decimal places for your own needs, in your own application. 🤓
|
||||
/// tip
|
||||
|
||||
Make sure you adjust the number of digits and decimal places for your own needs, in your own application. 🤓
|
||||
|
||||
///
|
||||
|
||||
## Create models with Decimals
|
||||
|
||||
@@ -142,7 +151,10 @@ Total money: 3.300
|
||||
|
||||
</div>
|
||||
|
||||
!!! warning
|
||||
Although Decimal types are supported and used in the Python side, not all databases support it. In particular, SQLite doesn't support decimals, so it will convert them to the same floating `NUMERIC` type it supports.
|
||||
/// warning
|
||||
|
||||
But decimals are supported by most of the other SQL databases. 🎉
|
||||
Although Decimal types are supported and used in the Python side, not all databases support it. In particular, SQLite doesn't support decimals, so it will convert them to the same floating `NUMERIC` type it supports.
|
||||
|
||||
But decimals are supported by most of the other SQL databases. 🎉
|
||||
|
||||
///
|
||||
|
||||
Reference in New Issue
Block a user