Possibilité dans les champs non-numériques de filtrer le texte selon son début ou sa fin (text* et *text) #42
This commit is contained in:
@@ -1,3 +1,9 @@
|
|||||||
|
#### 2.4.0
|
||||||
|
|
||||||
|
- Site à peu près utilisable sur petit écran (smartphone) ([#63](https://github.com/ColinMaudry/decp.info/issues/63))
|
||||||
|
- Amélioration du référencement Web (sitemap, titres, descriptions) ([#50](https://github.com/ColinMaudry/decp.info/issues/50))
|
||||||
|
- Possibilité dans les champs non-numériques de filtrer le texte selon son début ou sa fin (`text*` et `*text`)
|
||||||
|
|
||||||
##### 2.3.1 (16 janvier 2026)
|
##### 2.3.1 (16 janvier 2026)
|
||||||
|
|
||||||
- Les champs absents du [schéma](https://www.data.gouv.fr/datasets/donnees-essentielles-de-la-commande-publique-consolidees-format-tabulaire?resource_id=9a4144c0-ee44-4dec-bee5-bbef38191d9a) sont ignorés pour éviter les erreurs
|
- Les champs absents du [schéma](https://www.data.gouv.fr/datasets/donnees-essentielles-de-la-commande-publique-consolidees-format-tabulaire?resource_id=9a4144c0-ee44-4dec-bee5-bbef38191d9a) sont ignorés pour éviter les erreurs
|
||||||
|
|||||||
@@ -308,6 +308,15 @@ def filter_table_data(lff: pl.LazyFrame, filter_query: str) -> pl.LazyFrame:
|
|||||||
elif operator == "contains":
|
elif operator == "contains":
|
||||||
if col_type in ["String", "Date"]:
|
if col_type in ["String", "Date"]:
|
||||||
filter_value = filter_value.strip('"')
|
filter_value = filter_value.strip('"')
|
||||||
|
if filter_value.endswith("*"):
|
||||||
|
lff = lff.filter(
|
||||||
|
pl.col(col_name).str.starts_with(filter_value[:-1])
|
||||||
|
)
|
||||||
|
elif filter_value.startswith("*"):
|
||||||
|
lff = lff.filter(
|
||||||
|
pl.col(col_name).str.ends_with(filter_value[1:])
|
||||||
|
)
|
||||||
|
else:
|
||||||
lff = lff.filter(
|
lff = lff.filter(
|
||||||
pl.col(col_name).str.contains("(?i)" + filter_value)
|
pl.col(col_name).str.contains("(?i)" + filter_value)
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user