Commit Graph

26 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
17a627a981 feat: Implement Event File Hosted Data Fix and API Guide Update
Address critical data visibility issues for Event Files and enhance frontend documentation.

This commit resolves the persistent problem where top-level hosted file convenience fields
(e.g., , , ) were
returning as  in V3 Event File API responses, even when .

Key changes include:
- Refactored  Pydantic model:
    - Removed redundant  definitions from top-level hosted file convenience fields,
      allowing direct mapping from SQL view columns.
    - Simplified  to focus solely on conditionally loading the nested
       object, as top-level fields are now populated directly by Pydantic
      from the  view.
    - Added comprehensive comments to clarify data flow, Pydantic's behavior, and the
      expected origin of these convenience fields from SQL views.
- Updated :
    - Introduced a new section detailing how to retrieve Event File data, including the
      use of  to get both top-level convenience fields and a nested
       object.
    - Clarified all ID references as random string IDs.
    - Renumbered the troubleshooting section.
- Copied updated guide to .
- Continued ID Vision compliance audit, ensuring consistent handling of random string IDs
  across various core and event models (Account, Address, Contact, DataStore, Event Badge Template).
- Consolidated ID Vision E2E tests and updated related documentation.
- Minor updates to  and
  to support Event File data retrieval with .
2026-02-19 15:22:17 -05:00
Scott Idem
5af3f44a53 Refactor Contact and User models to use Vision ID string pattern
Updated Contact_Base and User_Base (including New/Out variants) to use standardized string IDs mapped from random IDs via root_validator. Removed legacy integer ID fields and lookup validators to support V3 Vision standards. This completes the refactor chain for Person and Post dependencies.
2026-01-27 12:12:51 -05:00
Scott Idem
45f6303219 feat(v3): robust search wildcards, smart status filtering, and fixed ID population 2026-01-06 15:54:31 -05:00
Scott Idem
493f4a7365 Moving ID random generation to the SQL db instead. General clean up. 2022-06-30 15:04:19 -04:00
Scott Idem
8d5b4c7fc0 Work on orders and order lines. Removing user_id related from order. Also general clean up. 2022-03-16 16:52:03 -04:00
Scott Idem
d8065efec5 Cleaning up create and update Cvent person in Aether for IDAA members. Added lookup by external ID and email for Cvent. 2022-02-02 18:16:58 -05:00
Scott Idem
4abf02aa15 Working on general code clean up and Cvent API related 2022-02-01 12:17:25 -05:00
Scott Idem
9efaa2bf61 Work on API CRUD, person, membership 2022-01-14 17:45:34 -05:00
Scott Idem
0866fbbed6 Clean up 2021-12-29 19:42:27 -05: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
107366d4f8 Working on contact and address create update v4 2021-08-25 18:48:55 -04:00
Scott Idem
d1c7a88c64 Working on data importing. Mainly for IDAA membership. 2021-08-18 18:25:22 -04:00
Scott Idem
475239f6e9 Working on importing IDAA data 2021-07-30 18:13:31 -04:00
Scott Idem
7ad98c2946 Working on person and user and related 2021-07-21 18:56:22 -04:00
Scott Idem
50a8ce271d Bug fix for post lists 2021-07-20 14:02:08 -04:00
Scott Idem
49805f48c9 A lot of changes related to person and membership 2021-07-09 17:34:02 -04:00
Scott Idem
59c151f639 Working on event (meet) and related updates 2021-06-30 15:47:31 -04:00
Scott Idem
a0514b5179 Working on membership, person, user, and order 2021-06-28 14:23:06 -04:00
Scott Idem
d85ab35812 Working on membership stuff 2021-06-24 17:50:11 -04:00
Scott Idem
c1d23d15f4 Working on all module routes, methods, and models 2021-06-22 18:00:34 -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
717db418f9 Work on better way to update objects. A lot of work! 2021-06-10 17:03:12 -04:00
Scott Idem
443d2bab77 A lot of general clean up of everything. 2021-05-28 03:52:31 -04:00
Scott Idem
2167c7e897 General clean up of everything. 2021-05-28 03:23:52 -04:00
Scott Idem
e46032a00b General clean up of models and methods. 2021-05-28 01:30:56 -04:00