gpt4 book ai didi

ios - 具有关系的核心数据模型

转载 作者:行者123 更新时间:2023-11-29 01:16:42 26 4
gpt4 key购买 nike

我一直在为我的应用程序开发核心数据模型。我相信我的最终模型是正确的,但有几件事我有点困惑。这就是我想要做的:

  1. 用户为一副纸牌命名。
  2. 然后用户将被带到另一个输入屏幕,他们将在其中输入问题和答案,并以他们之前创建的名称保存。
  3. 问题和答案都将保持相互链接,并与他们的名字保持链接。 (每副牌也可以有多个问答对)

我所做的是这样的:

Core data model

从我读到的in this guide ,看来我不需要一个单独的实体来回答问题。看来我可以在 Name 实体下创建这两个关系。所以我不太确定我是否应该只在 Name 实体下创建问答关系,或者为问题和答案创建单独的实体。

最佳答案

如果您的第一个实体是一叠问题,您可能应该称它为 Deck 而不是 Name

您的第二个实体名称应该是单数,因为每个实体代表一个 Card 对象。

由于每张卡片都有一个问题和答案,因此您不必使用单独的 QuestionAnswer 实体对其进行建模。只需将每张卡片的答案与其问题一起存储即可。

enter image description here

至于为什么要将问题和答案存储在单独的实体中,这是模拟一对多关系的唯一有效方式,其中每副牌都有很多卡片(或问题)。

否则,将没有直观的方式来表示卡片本身内的(固定或)可变数量的问题和答案属性。在最坏的情况下,您的 Deck 最终会看起来像:

extension Deck {
@NSManaged var name: String
@NSManaged var question1: String
@NSManaged var answer1: String
@NSManaged var question2: String
@NSManaged var answer2: String
@NSManaged var question3: String
@NSManaged var answer3: String
@NSManaged var question4: String
@NSManaged var answer4: String
...
}

关于ios - 具有关系的核心数据模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35098037/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com