Commit Graph

44 Commits

Author SHA1 Message Date
Scott Idem
0f4b4d2f51 feat: Implement V3 ID Vision and fields_to_exclude_from_db across core models
This commit refactors numerous Pydantic models to align with the V3 ID Vision standard, ensuring that primary and foreign key fields are represented as clean string IDs in the API. It also introduces and populates the  ClassVar in each model to prevent view-only fields and linked objects from being inadvertently written to the database during PATCH/POST operations.

Specifically, this includes:
- Adding  to exclude view-derived or joined fields such as , , nested objects (e.g., , ), and convenience fields (e.g., ).
- Adjusting root validators to correctly map string IDs and strip internal integer IDs for API responses.
- Resolving a KeyError by adding  to .

These changes are crucial for maintaining data integrity and consistency with the V3 API architecture.
2026-02-24 16:21:27 -05:00
Scott Idem
2266f149f7 security(v3): harden multi-tenant isolation and enhance failure feedback 2026-02-13 18:45:20 -05:00
Scott Idem
0de6058639 feat(api): improve ID resolution in search and enable presenter file count
- In lib_sql_search, added a fallback to resolve random string IDs via Redis
  when the view lacks a dedicated _id_random column.
- Un-commented file_count in Event_Presenter_Out_Base to support file
  tracking for presenters.
2026-01-29 17:09:41 -05:00
Scott Idem
97f0a59fcf Updating the models and less log info 2024-08-09 17:47:33 -04:00
Scott Idem
394c2d1d94 Update models to include file id list. 2024-08-09 15:28:18 -04:00
Scott Idem
0d1afdc900 Added yet another field for quick access 2024-07-24 13:51:45 -04:00
Scott Idem
92c4646ca9 Fixed external_id alias 2024-07-17 16:14:14 -04:00
Scott Idem
f392e5020a More fields from person table 2024-06-25 10:32:17 -04:00
Scott Idem
d181cd1552 Added a few extra presenter fields related to person table 2024-06-25 09:10:12 -04:00
Scott Idem
b91f9f1f04 Updates to the models to include passcode and related. 2024-06-18 18:28:42 -04:00
Scott Idem
35f07a7993 Now with person_id 2024-06-11 19:36:10 -04:00
Scott Idem
afe127d9fe More model property updates 2024-06-11 18:24:25 -04:00
Scott Idem
19082a7a10 Adding cfg_json and data_json fields to more models 2024-06-11 13:35:00 -04:00
Scott Idem
6691f2a701 Updating the models to include a standard passcode field. 2024-06-10 19:40:35 -04:00
Scott Idem
fc86d826e9 Commenting out the base_fields for *_id_random in the models 2024-05-24 15:45:43 -04:00
Scott Idem
9c45bea785 Working on bug fix for columns that are empty in first rows. 2024-04-23 18:53:37 -04:00
Scott Idem
31a45c1b5c A couple new fields for sponsorships 2024-03-01 09:04:29 -05:00
Scott Idem
99d24524d1 Now with an agreement field 2024-02-29 15:26:49 -05:00
Scott Idem
929a2749f7 Updates to presenter for new fields with JSON 2024-02-29 14:26:51 -05:00
Scott Idem
3efc55676e Bug fix for sponsorships. Typos 2024-02-28 14:55:01 -05:00
Scott Idem
74fdea2941 Updates to person related models 2023-10-31 13:30:00 -04:00
Scott Idem
9308c5d0de Updates for event_presenter_model fields 2023-10-20 11:23:28 -04:00
Scott Idem
430a155b75 General clean up. Updated event models 2023-03-21 17:55:45 -04:00
Scott Idem
a9f0e2bf3d Clean up and debugging. 2023-01-30 17:59:13 -05:00
Scott Idem
6cfd76c788 Minor changes 2022-10-10 11:27:44 -04:00
Scott Idem
b70dff8031 Minor changes 2022-10-06 00:22:52 -04:00
Scott Idem
42a9bd9f32 General clean up. Work on event files and event presenters. 2022-08-12 17:29:52 -04:00
Scott Idem
f067aefdca General clean up 2022-08-12 14:06:43 -04:00
Scott Idem
5066cd099d More again again again. Moving ID random generation to the SQL db instead. General clean up. 2022-06-30 17:00:17 -04:00
Scott Idem
dc585fb9bd Work on event device model and related. 2022-05-25 14:02:54 -04:00
Scott Idem
16fca4b2f0 General clean up. Work on importing AAPOR. Work on sessions, presentations, and presenters. 2022-04-12 04:08:52 -04:00
Scott Idem
0b3b066b9b Work on event and lookup related end points, methods, and models 2021-11-10 17:57:51 -05:00
Scott Idem
53c6c6b51c Work on event importing and related 2021-10-19 21:21:11 -04:00
Scott Idem
f98c57157b Code clean up. Better debugging 2021-09-29 17:44:51 -04:00
Scott Idem
e231090168 Code clean up. Work on event session and file counts for event models 2021-09-28 18:06:35 -04:00
Scott Idem
0f87f69077 Work on things related to event_person, tracking, badges, sessions, etc 2021-09-21 17:30:20 -04:00
Scott Idem
15fd32b252 Work on a lot of things. Mainly cleaning up person and profile related fields in multiple tables. 2021-09-10 18:12:24 -04:00
Scott Idem
b2129d6e05 Work on event, session, presentatio, presenter, and person related 2021-09-09 18:58:17 -04:00
Scott Idem
6508461ae6 Working on stuff related to session proposals. Again... I think it all works now. 2021-08-26 01:23:14 -04:00
Scott Idem
824bdd29a2 Work on event, event_session, event_presentation, event_presenter, user, and person routes, methods, and models 2021-08-21 16:04:17 -04:00
Scott Idem
d85ab35812 Working on membership stuff 2021-06-24 17:50:11 -04:00
Scott Idem
4e6fedcffd Work on better way to update objects. A lot of work! Also a lot of clean up. 2021-06-10 17:42:31 -04:00
Scott Idem
33ec6a4acb A lot of work on event related modules. Also a lot of clean up 2021-06-07 16:48:55 -04:00
Scott Idem
b1effc128a Working on event related models and methods. Also, a lot of general clean up of everything. 2021-05-28 16:03:17 -04:00