我有一个关于核心数据建模的问题想问。
我正在开发一款可以帮助用户内存诗歌的应用。这首诗分为如下:
这首诗分为多个章节
每章分为多行
现在,正因为如此,我想我会创建两个实体,如下所示:
因为我打算同时为用户播放音频,所以我还需要对音频文件的引用,这就是为什么我认为我也需要 AudioFile 的实体。因此我也会有:
所以我的章节实体会调用 Line 实体的集合,而每个 Line 对象都会引用一个音频实体。这有意义吗?
我可以想象每首诗都有一个音频文件,每个 Line Entity 都应该引用该音频文件的一部分。我会创建实体“AudioFile”,但我会用(如您所说)字段将其称为“AudioFileSplit”:ReferenceToLineEntity、Start、End。 请注意,您不需要此实体中的 ChapterNumber 或 LineNumber 字段,因为这个新实体已经引用了它们(通过行引用,您可以获得行数据、章节数据和诗歌数据)。
现在,您需要存储音频文件的 URL。可能您有一个名为“诗”的实体。如果每首诗都有一个音频文件,则应该向诗实体添加一个新字段(可能是 AudioFileURL?)
恢复,我的 Modell 会是这样的
PoemEntity:[诗歌字段]、AudioFileURL、ReferenceToChapters
ChapterEntity:[章节字段],SingleReferenceToPoem, ReferenceToLines
LineEntity:[Fields For ine], SingleReferenceToChapter, SingleReferenceToAudioFileSplit
AudioFileSplit:SingleReferenceToLine,Start,End
注意 LineEntity 和 AudioFileSplit 之间的关系是 1:1,因此您甚至可以进一步简化:
LineEntity:[线的字段],SingleReferenceToChapter,开始,结束。 (并且没有 AudioFileSplit 实体)
问候 ;)
关于ios - 尝试为 iOS 中的音频播放应用程序设计核心数据模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33623469/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |