fastgenerateapi 1.1.21__tar.gz → 1.1.23__tar.gz

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.

Potentially problematic release.


This version of fastgenerateapi might be problematic. Click here for more details.

Files changed (115) hide show
  1. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/PKG-INFO +1 -1
  2. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/__version__.py +1 -1
  3. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/base_view.py +1 -1
  4. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/__init__.py +1 -0
  5. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/all_settings.py +12 -10
  6. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/db_settings.py +1 -1
  7. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi.egg-info/PKG-INFO +1 -1
  8. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/LICENSE +0 -0
  9. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/README.md +0 -0
  10. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/__init__.py +0 -0
  11. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/__init__.py +0 -0
  12. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/api_view.py +0 -0
  13. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/create_view.py +0 -0
  14. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/delete_filter_view.py +0 -0
  15. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/delete_tree_view.py +0 -0
  16. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/delete_view.py +0 -0
  17. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/get_all_view.py +0 -0
  18. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/get_one_view.py +0 -0
  19. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/get_relation_view.py +0 -0
  20. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/get_tree_view.py +0 -0
  21. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/__init__.py +0 -0
  22. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/base_mixin.py +0 -0
  23. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/dbmodel_mixin.py +0 -0
  24. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/get_mixin.py +0 -0
  25. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/response_mixin.py +0 -0
  26. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/save_mixin.py +0 -0
  27. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/tool_mixin.py +0 -0
  28. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/utils/__init__.py +0 -0
  29. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/utils/docx_util.py +0 -0
  30. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/utils/file_util.py +0 -0
  31. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/utils/pdf_util.py +0 -0
  32. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/utils/xlsx_util.py +0 -0
  33. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/mixin/utils/zip_util.py +0 -0
  34. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/sql_get_view.py +0 -0
  35. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/switch_view.py +0 -0
  36. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/update_relation_view.py +0 -0
  37. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/api_view/update_view.py +0 -0
  38. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/cache/__init__.py +0 -0
  39. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/cache/cache_decorator.py +0 -0
  40. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/cache/key_builder.py +0 -0
  41. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/channel/__init__.py +0 -0
  42. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/channel/connection_manager.py +0 -0
  43. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/channel/consumer.py +0 -0
  44. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/channel/websocket_view.py +0 -0
  45. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/controller/__init__.py +0 -0
  46. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/controller/filter_controller.py +0 -0
  47. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/controller/router_controller.py +0 -0
  48. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/controller/rpc_controller.py +0 -0
  49. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/controller/search_controller.py +0 -0
  50. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/controller/ws_controller.py +0 -0
  51. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/data_type/__init__.py +0 -0
  52. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/data_type/data_type.py +0 -0
  53. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/data_type/mysql_data_type.py +0 -0
  54. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/deps/__init__.py +0 -0
  55. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/deps/filter_params_deps.py +0 -0
  56. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/deps/paginator_deps.py +0 -0
  57. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/deps/tree_params_deps.py +0 -0
  58. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/example/__init__.py +0 -0
  59. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/example/models.py +0 -0
  60. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/example/routers.py +0 -0
  61. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/example/schemas.py +0 -0
  62. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/example/views.py +0 -0
  63. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/fastapi_utils/__init__.py +0 -0
  64. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/fastapi_utils/all.py +0 -0
  65. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/fastapi_utils/param_utils.py +0 -0
  66. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/fastapi_utils/response_utils.py +0 -0
  67. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/model/__init__.py +0 -0
  68. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/model/base_model.py +0 -0
  69. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/my_fields/__init__.py +0 -0
  70. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/my_fields/aes_field.py +0 -0
  71. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/my_fields/enum_field.py +0 -0
  72. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/my_fields/pk_field.py +0 -0
  73. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/my_fields/pwd_field.py +0 -0
  74. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/my_fields/soft_delete_field.py +0 -0
  75. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/my_fields/validator.py +0 -0
  76. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/pydantic_utils/__init__.py +0 -0
  77. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/pydantic_utils/base_model.py +0 -0
  78. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/pydantic_utils/base_settings.py +0 -0
  79. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/pydantic_utils/json_encoders.py +0 -0
  80. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/__init__.py +0 -0
  81. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/common_function.py +0 -0
  82. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/common_schema_factory.py +0 -0
  83. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/create_schema_factory.py +0 -0
  84. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/filter_schema_factory.py +0 -0
  85. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/get_all_schema_factory.py +0 -0
  86. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/get_one_schema_factory.py +0 -0
  87. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/get_relation_schema_factory.py +0 -0
  88. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/get_tree_schema_factory.py +0 -0
  89. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/response_factory.py +0 -0
  90. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/sql_get_all_schema_factory.py +0 -0
  91. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/schemas_factory/update_schema_factory.py +0 -0
  92. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/app_settings.py +0 -0
  93. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/etcd_settings.py +0 -0
  94. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/file_settings.py +0 -0
  95. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/jwt_settings.py +0 -0
  96. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/otlp_settings.py +0 -0
  97. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/redis_settings.py +0 -0
  98. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/sms_settings.py +0 -0
  99. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/settings/system_settings.py +0 -0
  100. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/__init__.py +0 -0
  101. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/aes.py +0 -0
  102. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/auto_discover.py +0 -0
  103. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/exception.py +0 -0
  104. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/file_utils.py +0 -0
  105. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/pwd_utils.py +0 -0
  106. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/ramdom_utils.py +0 -0
  107. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/snowflake.py +0 -0
  108. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/str_util.py +0 -0
  109. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi/utils/swagger_to_js.py +0 -0
  110. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi.egg-info/SOURCES.txt +0 -0
  111. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi.egg-info/dependency_links.txt +0 -0
  112. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/fastgenerateapi.egg-info/top_level.txt +0 -0
  113. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/script/__init__.py +0 -0
  114. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/setup.cfg +0 -0
  115. {fastgenerateapi-1.1.21 → fastgenerateapi-1.1.23}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastgenerateapi
3
- Version: 1.1.21
3
+ Version: 1.1.23
4
4
  Summary: FastAPIView Class View
5
5
  Author: ShiLiang
6
6
  Author-email: 2509144896@qq.com
@@ -8,7 +8,7 @@
8
8
  # d8888P
9
9
 
10
10
 
11
- VERSION = (1, 1, 21)
11
+ VERSION = (1, 1, 23)
12
12
 
13
13
  __version__ = '.'.join(map(str, VERSION))
14
14
 
@@ -161,7 +161,7 @@ class BaseView(BaseMixin, ResponseMixin, ToolMixin, DBModelMixin):
161
161
  model_class: Type[Model], # 数据库模型
162
162
  model: Union[Model, None] = None
163
163
  ):
164
- check_unique_fields = cls._get_unique_fields(model_class) + cls._get_foreign_key_fields(model_class)
164
+ check_unique_fields = cls._get_unique_fields(model_class)
165
165
  check_unique_together_fields = cls._get_unique_together_fields(model_class)
166
166
  for unique_field in check_unique_fields:
167
167
  if hasattr(request_data, unique_field):
@@ -4,4 +4,5 @@ from .db_settings import *
4
4
  from .file_settings import *
5
5
  from .jwt_settings import *
6
6
  from .sms_settings import *
7
+ from .etcd_settings import *
7
8
 
@@ -76,7 +76,6 @@ class SettingsModel(BaseModel):
76
76
  def get_global_settings(
77
77
  cls,
78
78
  path: Union[Path, str, None] = '.env',
79
- etcd_settings: Optional[EtcdSettings] = None,
80
79
  ):
81
80
  """
82
81
  get global settings and set into cache
@@ -92,22 +91,25 @@ class SettingsModel(BaseModel):
92
91
  if isinstance(v, FieldInfo):
93
92
  setting_dict[k] = v.annotation(_env_file=str(path))
94
93
  elif str(path).__contains__('.yaml'):
95
- data_dict = None
94
+ data_dict = {}
96
95
  if os.path.isfile(path):
97
96
  with open(path, 'r', encoding='utf-8') as file:
98
- data_dict = yaml.safe_load(file)
99
- else:
100
- if not etcd_settings:
101
- etcd_settings = EtcdSettings()
102
- if etcd_settings.ETCD_SETTING_KEY:
103
- res, metadata = etcd_settings.client.get(etcd_settings.ETCD_SETTING_KEY)
104
- data_dict = yaml.safe_load(res)
97
+ data_dict = yaml.safe_load(file) or {}
98
+ etcd_settings = EtcdSettings(**data_dict.get("EtcdSettings", {}))
99
+ if etcd_settings.ETCD_SETTING_KEY:
100
+ res, metadata = etcd_settings.client.get(etcd_settings.ETCD_SETTING_KEY)
101
+ data_dict.update(yaml.safe_load(res))
105
102
  if not data_dict:
106
103
  raise ValidationException(errors="配置错误")
107
104
  for k, v in setting_models.items():
108
105
  if isinstance(v, FieldInfo):
106
+ env_prefix = None
109
107
  if hasattr(v.annotation, "Config") and v.annotation.Config.env_prefix:
110
- annotation_dict = {k_i.removeprefix(v.annotation.Config.env_prefix): v_i for k_i, v_i in data_dict.get(v.annotation.__name__, {}).items()}
108
+ env_prefix = v.annotation.Config.env_prefix
109
+ if not env_prefix and hasattr(v.annotation, "model_config"):
110
+ env_prefix = v.annotation.model_config.get("env_prefix")
111
+ if env_prefix:
112
+ annotation_dict = {k_i.removeprefix(env_prefix): v_i for k_i, v_i in data_dict.get(v.annotation.__name__, {}).items()}
111
113
  else:
112
114
  annotation_dict = data_dict.get(v.annotation.__name__, {})
113
115
  setting_dict[k] = v.annotation(**annotation_dict)
@@ -11,7 +11,7 @@ class DBSettings(BaseSettings):
11
11
 
12
12
  DB_TYPE: Optional[str] = Field(default='mysql', description="数据库类型")
13
13
  DB_HOST: Optional[str] = Field(default='127.0.0.1', description="数据库域名")
14
- DB_PORT: Optional[str] = Field(default='3306', description="数据库端口")
14
+ DB_PORT: Optional[int] = Field(default='3306', description="数据库端口")
15
15
  DB_DATABASE: Optional[str] = Field(default='admin', description="数据库名")
16
16
  DB_USERNAME: Optional[str] = Field(default='root', description="数据库用户名")
17
17
  DB_PASSWORD: Optional[str] = Field(default='', description="数据库密码")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastgenerateapi
3
- Version: 1.1.21
3
+ Version: 1.1.23
4
4
  Summary: FastAPIView Class View
5
5
  Author: ShiLiang
6
6
  Author-email: 2509144896@qq.com