You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Current (confusing)module=dj.VirtualModule('lab', 'my_lab_schema')
module.Subject.fetch()
# Orschema=dj.Schema('my_lab_schema')
schema.spawn_missing_classes(context=locals())
Subject.fetch()
# Proposed (cleaner)schema=dj.Schema('my_lab_schema')
Subject=schema['Subject'] # get one tableSubject.fetch()
# Or iteratefortableinschema:
print(len(table()))
# Or use virtual_schema for module-like accesslab=dj.virtual_schema('my_lab_schema')
lab.Subject.fetch()
Activity
feat: modernize virtual schema infrastructure
dimitri-yatsenko commentedon Jan 8, 2026
Implemented in the
virtual-modulesbranch:Changes
New API
Breaking Changes
create_virtual_module(usedj.virtual_schema()instead)Fixed
gc.pynow usesschema.get_table()instead of non-existentschema.spawn_table()Not Changed
spawn_missing_classesretained (familiar to existing users, not confusing)Documentation
virtual-schemas.mdspecification to datajoint-docsCommits:
feat: modernize virtual schema infrastructuredocs: add virtual-schemas specification