Skip to content

Commit 055c9c6

Browse files
committed
Update documentation for new AttributeType system
- Rewrite customtype.md with comprehensive documentation: - Overview of encode/decode pattern - Required components (type_name, dtype, encode, decode) - Type registration with @dj.register_type decorator - Validation with validate() method - Storage types (dtype options) - Type chaining for composable types - Key parameter for context-aware encoding - Entry point packages for distribution - Complete neuroscience example - Migration guide from AttributeAdapter - Best practices - Update attributes.md to reference custom types
1 parent 2be5f11 commit 055c9c6

File tree

2 files changed

+440
-38
lines changed

2 files changed

+440
-38
lines changed

docs/src/design/tables/attributes.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,10 @@ sending/receiving an opaque data file to/from a DataJoint pipeline.
7777
- `filepath@store`: a [filepath](filepath.md) used to link non-DataJoint managed files
7878
into a DataJoint pipeline.
7979

80+
- `<custom_type>`: a [custom attribute type](customtype.md) that defines bidirectional
81+
conversion between Python objects and database storage formats. Use this to store
82+
complex data types like graphs, domain-specific objects, or custom data structures.
83+
8084
## Numeric type aliases
8185

8286
DataJoint provides convenient type aliases that map to standard MySQL numeric types.

0 commit comments

Comments
 (0)