arpakitlib 1.8.215__py3-none-any.whl → 1.8.216__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- arpakitlib/_arpakit_project_template_v_5/arpakitlib_project_template_info.json +1 -1
- arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/common.py +6 -14
- arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/common.py +0 -4
- arpakitlib/ar_sqlalchemy_util.py +41 -8
- {arpakitlib-1.8.215.dist-info → arpakitlib-1.8.216.dist-info}/METADATA +1 -1
- {arpakitlib-1.8.215.dist-info → arpakitlib-1.8.216.dist-info}/RECORD +9 -9
- {arpakitlib-1.8.215.dist-info → arpakitlib-1.8.216.dist-info}/LICENSE +0 -0
- {arpakitlib-1.8.215.dist-info → arpakitlib-1.8.216.dist-info}/WHEEL +0 -0
- {arpakitlib-1.8.215.dist-info → arpakitlib-1.8.216.dist-info}/entry_points.txt +0 -0
@@ -19,6 +19,7 @@ def get_default_column_formatters() -> dict[Any, Any]:
|
|
19
19
|
SimpleDBM.ColumnNames.extra_data: lambda m, a: format_json_for_preview_(m.extra_data),
|
20
20
|
}
|
21
21
|
|
22
|
+
|
22
23
|
def get_default_column_formatters_detail() -> dict[Any, Any]:
|
23
24
|
return {
|
24
25
|
SimpleDBM.ColumnNames.creation_dt: lambda m, _: format_datetime_(m.creation_dt),
|
@@ -36,7 +37,6 @@ def get_default_column_searchable_list() -> list[str]:
|
|
36
37
|
return [SimpleDBM.ColumnNames.id, SimpleDBM.ColumnNames.long_id, SimpleDBM.ColumnNames.uuid]
|
37
38
|
|
38
39
|
|
39
|
-
|
40
40
|
class SimpleMV(ModelView):
|
41
41
|
can_create = True
|
42
42
|
can_edit = True
|
@@ -65,27 +65,19 @@ class SimpleMV(ModelView):
|
|
65
65
|
@classmethod
|
66
66
|
def get_default_column_list(cls) -> list[str]:
|
67
67
|
from project.sqlalchemy_db_.sqlalchemy_model import SimpleDBM
|
68
|
-
return SimpleDBM.
|
68
|
+
return SimpleDBM.get_column_and_relationship_names_()
|
69
69
|
|
70
70
|
@classmethod
|
71
71
|
def get_default_column_details_list(cls) -> list[str]:
|
72
72
|
from project.sqlalchemy_db_.sqlalchemy_model import SimpleDBM
|
73
|
-
return SimpleDBM.
|
73
|
+
return SimpleDBM.get_column_and_relationship_names_()
|
74
74
|
|
75
75
|
@classmethod
|
76
76
|
def get_default_form_columns(cls) -> list[str]:
|
77
77
|
from project.sqlalchemy_db_.sqlalchemy_model import SimpleDBM
|
78
|
-
res = SimpleDBM.
|
79
|
-
|
80
|
-
|
81
|
-
if SimpleDBM.ColumnNames.long_id in res:
|
82
|
-
res.remove(SimpleDBM.ColumnNames.long_id)
|
83
|
-
if SimpleDBM.ColumnNames.uuid in res:
|
84
|
-
res.remove(SimpleDBM.ColumnNames.uuid)
|
85
|
-
if SimpleDBM.ColumnNames.slug in res:
|
86
|
-
res.remove(SimpleDBM.ColumnNames.slug)
|
87
|
-
if SimpleDBM.ColumnNames.creation_dt in res:
|
88
|
-
res.remove(SimpleDBM.ColumnNames.creation_dt)
|
78
|
+
res = SimpleDBM.get_column_and_relationship_names_(
|
79
|
+
include_column_pk=False
|
80
|
+
)
|
89
81
|
return res
|
90
82
|
|
91
83
|
@classmethod
|
@@ -143,10 +143,6 @@ class SimpleDBM(BaseDBM):
|
|
143
143
|
def uuid_as_str(self) -> str:
|
144
144
|
return str(self.uuid)
|
145
145
|
|
146
|
-
@classmethod
|
147
|
-
def get_mapped_column_names(cls) -> list[str]:
|
148
|
-
return [k for k, v in SimpleDBM.__dict__.items() if isinstance(v, Mapped)]
|
149
|
-
|
150
146
|
# ---SDP---
|
151
147
|
|
152
148
|
@property
|
arpakitlib/ar_sqlalchemy_util.py
CHANGED
@@ -68,21 +68,54 @@ class BaseDBM(DeclarativeBase):
|
|
68
68
|
return self._bus_data
|
69
69
|
|
70
70
|
@classmethod
|
71
|
-
def
|
71
|
+
def get_column_names_(
|
72
72
|
cls,
|
73
73
|
*,
|
74
74
|
include_pk: bool = True,
|
75
|
-
|
75
|
+
exclude_names: list[str] | None = None
|
76
76
|
) -> list[str]:
|
77
|
-
|
78
|
-
|
79
|
-
|
77
|
+
if exclude_names is None:
|
78
|
+
exclude_names = []
|
79
|
+
res = []
|
80
|
+
for c in inspect(cls).columns:
|
80
81
|
if not include_pk and c.primary_key:
|
81
82
|
continue
|
82
|
-
if c.
|
83
|
+
if c.key in exclude_names:
|
83
84
|
continue
|
84
|
-
|
85
|
-
return
|
85
|
+
res.append(c)
|
86
|
+
return res
|
87
|
+
|
88
|
+
@classmethod
|
89
|
+
def get_relationship_names_(
|
90
|
+
cls,
|
91
|
+
*,
|
92
|
+
exclude_names: list[str] | None = None
|
93
|
+
) -> list[str]:
|
94
|
+
if exclude_names is None:
|
95
|
+
exclude_names = []
|
96
|
+
res = []
|
97
|
+
for c in inspect(cls).relationships:
|
98
|
+
if c.key in exclude_names:
|
99
|
+
continue
|
100
|
+
res.append(c)
|
101
|
+
return res
|
102
|
+
|
103
|
+
@classmethod
|
104
|
+
def get_column_and_relationship_names_(
|
105
|
+
cls,
|
106
|
+
*,
|
107
|
+
include_column_names: bool = True,
|
108
|
+
include_column_pk: bool = True,
|
109
|
+
exclude_column_names: list[str] | None = None,
|
110
|
+
include_relationship_names: bool = True,
|
111
|
+
exclude_relationship_names: list[str] | None = None,
|
112
|
+
) -> list[str]:
|
113
|
+
res = []
|
114
|
+
if include_column_names:
|
115
|
+
res += cls.get_column_names_(include_pk=include_column_pk, exclude_names=exclude_column_names)
|
116
|
+
if include_relationship_names:
|
117
|
+
res += cls.get_relationship_names_(exclude_names=exclude_relationship_names)
|
118
|
+
return res
|
86
119
|
|
87
120
|
@classmethod
|
88
121
|
def get_sd_property_names(
|
@@ -8,7 +8,7 @@ arpakitlib/_arpakit_project_template_v_5/alembic/env.py,sha256=Qesmnj5A2kB-Doeuf
|
|
8
8
|
arpakitlib/_arpakit_project_template_v_5/alembic/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
|
9
9
|
arpakitlib/_arpakit_project_template_v_5/alembic/versions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
10
10
|
arpakitlib/_arpakit_project_template_v_5/alembic.ini,sha256=8fuyeEvGBiPGbxEFy8ISBV3xX_fgVmuhEGpB10_B5Uo,3733
|
11
|
-
arpakitlib/_arpakit_project_template_v_5/arpakitlib_project_template_info.json,sha256=
|
11
|
+
arpakitlib/_arpakit_project_template_v_5/arpakitlib_project_template_info.json,sha256=aoHu_XuInN6u9CGw16RqSp5JF_iOvjJ0xoCaXOJtX_M,98
|
12
12
|
arpakitlib/_arpakit_project_template_v_5/command/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
13
13
|
arpakitlib/_arpakit_project_template_v_5/command/alembic_history.sh,sha256=OMnDNtHIksGh9iavWnzbtxcudZW4vjdcISsBXvzZSPw,22
|
14
14
|
arpakitlib/_arpakit_project_template_v_5/command/alembic_revision_autogenerate.sh,sha256=yW2i-SBOtBx15Ya0poVQqKkJM5t2JZp06r9AEW-DmGE,46
|
@@ -250,7 +250,7 @@ arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/create_sqladmin_app.p
|
|
250
250
|
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/event.py,sha256=LjAUYNlsX9Sj_QLMzYuTQbbYYbIMHhbsSjTXt-G7lOE,849
|
251
251
|
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/__init__.py,sha256=aKX6k2bEVvfXa9dATYts-sUoWgf4MV3H_PiiUceejr4,596
|
252
252
|
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/api_key.py,sha256=VTpepKLCKrPnftGD-8Ibp75S0dwUrLlUytRfcXDDcKg,1597
|
253
|
-
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/common.py,sha256=
|
253
|
+
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/common.py,sha256=1jGRO2xgNc_DwlhMoZD9C8HZi2qghjrBSnDf2dxB20Y,5150
|
254
254
|
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/operation.py,sha256=IqW9eh0u3-WFkE1oA3yjEboUW2F2zF4cKsp4_FNy2RE,3746
|
255
255
|
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/story_log.py,sha256=KTyvMty9bozjnC0bSDoTtK1H4LTFfbX_MwqP72Ip5D0,2194
|
256
256
|
arpakitlib/_arpakit_project_template_v_5/project/sqladmin_/model_view/user.py,sha256=AhK-2YocK1dM2wMxX_xF0qnsMiI5Pu0Arj5yfDe8Noo,2669
|
@@ -264,7 +264,7 @@ arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/const.py,sha256=
|
|
264
264
|
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_db.py,sha256=1y3FaMFzm_5UM2poqtBve_UP_mh1vjs--krq6yO8PsA,742
|
265
265
|
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/__init__.py,sha256=7PQqeYThEBXRrXwJZjuH7yAFu25DVr_IneuMwEF3kUE,731
|
266
266
|
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/api_key.py,sha256=2X6VPkf1TKq-0319J0tL-rPMvgmkBCjim3Si1dZboMQ,1969
|
267
|
-
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/common.py,sha256=
|
267
|
+
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/common.py,sha256=ynp36o48B_HNMJSAc-mw40LzhoFLSXyOWw3JOPc8gKo,4446
|
268
268
|
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/operation.py,sha256=-7uzlux8B7wtqhSd4b_06M40yTDySPIngm3Cwun2lSA,7378
|
269
269
|
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/story_log.py,sha256=CiNec-x5_z0Pr5Mt-RZXJ1tKJMRn_TAKIaOioG4NK7U,2489
|
270
270
|
arpakitlib/_arpakit_project_template_v_5/project/sqlalchemy_db_/sqlalchemy_model/user.py,sha256=22TE8y2Vm9byLLkIE6RVAMa29d9ILCVg1e1QYi4ONIQ,7898
|
@@ -411,13 +411,13 @@ arpakitlib/ar_schedule_uust_api_client_util.py,sha256=rXI2_3OTaIBgR-GixM1Ti-Ue1f
|
|
411
411
|
arpakitlib/ar_settings_util.py,sha256=Y5wi_cmsjDjfJpM0VJHjbo0NoVPKfypKaD1USowwDtQ,1327
|
412
412
|
arpakitlib/ar_sleep_util.py,sha256=ggaj7ML6QK_ADsHMcyu6GUmUpQ_9B9n-SKYH17h-9lM,1045
|
413
413
|
arpakitlib/ar_sqladmin_util.py,sha256=SEoaowAPF3lhxPsNjwmOymNJ55Ty9rmzvsDm7gD5Ceo,861
|
414
|
-
arpakitlib/ar_sqlalchemy_util.py,sha256=
|
414
|
+
arpakitlib/ar_sqlalchemy_util.py,sha256=QJWW8AgnFH-7vJ2OBfWxg7_IWNfVTMnXpWCRxkT2A_4,14338
|
415
415
|
arpakitlib/ar_str_util.py,sha256=2lGpnXDf2h1cBZpVf5i1tX_HCv5iBd6IGnrCw4QWWlY,4350
|
416
416
|
arpakitlib/ar_type_util.py,sha256=Cs_tef-Fc5xeyAF54KgISCsP11NHyzIsglm4S3Xx7iM,4049
|
417
417
|
arpakitlib/ar_yookassa_api_client_util.py,sha256=VozuZeCJjmLd1zj2BdC9WfiAQ3XYOrIMsdpNK-AUlm0,5347
|
418
418
|
arpakitlib/clone_pydantic_model_fields.py,sha256=Gn9_AIjKknN1eIYK_xH_cMyff3hjOpfwRqs583-rnJs,1167
|
419
|
-
arpakitlib-1.8.
|
420
|
-
arpakitlib-1.8.
|
421
|
-
arpakitlib-1.8.
|
422
|
-
arpakitlib-1.8.
|
423
|
-
arpakitlib-1.8.
|
419
|
+
arpakitlib-1.8.216.dist-info/LICENSE,sha256=GPEDQMam2r7FSTYqM1mm7aKnxLaWcBotH7UvQtea-ec,11355
|
420
|
+
arpakitlib-1.8.216.dist-info/METADATA,sha256=8VLikpn99aNZWDVqVrcnDqV0Q2P7FIN_3FKJZlWgomI,3741
|
421
|
+
arpakitlib-1.8.216.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
422
|
+
arpakitlib-1.8.216.dist-info/entry_points.txt,sha256=36xqR3PJFT2kuwjkM_EqoIy0qFUDPKSm_mJaI7emewE,87
|
423
|
+
arpakitlib-1.8.216.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|