我只是想驗證我的數據結構。
這似乎有點令我費解,也許它可以簡化?核心數據結構 - 避免循環引用?
- 問題分爲五章。
- 對於每個問題,每個會話只能有一個答案。
- 目的是爲了能夠比較/分析相同問題的答案(不同用戶或不同時間的相同用戶,即不同會話)。
- 如果章節和問題是相同的,則作爲章節&問題集合的模板不應該被複制。
- (如果Answer與Session沒有關係,那麼這將是必要的。)
- 從答覆到會話的關係是正確的策略嗎?
- 您還有什麼可以改進以簡化模型?
謝謝!
編輯
後續澄清:
- 答案是不是靜態的(例如, 「正確」 的答案, 「解決方案」),但一些文本的用戶輸入。這更像是一個「問卷」而不是「測驗」。答案有可以分析的量化屬性。
- 如前所述,一個問題在會話中只能有一個答案。由於問題可以間接屬於多個會話(通過
(NSSet*) question.chapter.template.sessions
),因此問題可能有多個答案,因此需要一對多的關係。 - 典型場景:用戶使用特定模板開始新會話並填寫答案。然後他可以查看結果分析,並將其與使用相同模板的其他會話的結果進行比較。
EDIT 2
包括屬性
如果不真正瞭解所有「遊戲規則」,但對初學者很難給出反饋:1.如果答案可能屬於多個問題,您如何獲得每個會話所問的問題? 2.假設你需要知道哪個答案對於某個問題(比如多選)可能是正確的 - 我不知道該映射到底有多精確3.是所有這些動態還是靜態的?因爲我根本沒有看到靜態的循環依賴問題。還需要知道最關鍵的訪問方案來優化此... – user387184
我編輯了我的問題來澄清。感謝您看這個。 – Mundi
如果**你**可以在你的代碼中處理你在處理數據時不會遇到無限循環,'Core Data'可以毫無問題地處理這樣的結構,所以你應該只關心你自己。 – holex