У меня есть три типа вопросов:
- Vocab (представлен
question:answer
парами) - Грамматика (представлена
question:[list, of, answers]
) - Прослушивание (
question:answer
- где значение представляет собой аудиофайл .oog
/ .wav
.
Я избегал здесь термина key:value
, так как я не уверен, что словари могутхранить аудио.
Мой вопрос:
Как я могу смоделировать этот набор таблиц в управляемый дизайн?
languages lessons lesson_types
========= ======== ============
lang_id lesson_id lt_id
lang_name lang_id lt_name
lesson_name lt_desc
lt_id
И это простая часть.
Часть, в которой у меня возникли проблемы с пониманием, заключается в том, как я могу сериализовать различные типы объектов в Python, чтобы преодолеть различия, предлагаемые каждым типом вопроса.При строгом подходе только к СУБД я бы использовал отдельную таблицу для каждого типа вопроса (поскольку BLOB-файлы содержат аудио, грамматические вопросы могут иметь до десятка частей для описания времени, пола и т. Д.).Я рад видеть, что sqlalchemy
может сделать с точки зрения упрощения структуры базы данных.
Как можно разработать таблицу questions
, которая может обрабатывать словари , а также как сериализуемые, sqlite3
дружественные аудио форматы?