我很难知道如何编写我的数据/架构结构,并希望得到任何建议。如果您能解决底部的问题,那将非常有帮助!
我正在使用GraphCool并且有 4 个Schema
:
User
、Parameter
、Industry
和Post
.
User
Industry
'从列表中选择多个。他们可以随时改变他们的选择。User
's 有多个Parameter
's 和Post
's,并且每个Parameter
andPost
都有一个关联的 Industry。- 默认情况下,某些
Parameter
' 和Post
' 会提供给用户。User
也可以自己制作。 - 随着我的应用程序的增长,默认
Parameter
的 ' 和Post
' 将会改变,我希望所有当前的客户都能看到这种变化(这就是为什么我不知道如何对其进行硬编码)。
总之。NewUser
需要被赋予这些 default Post
'sIndustry
和Parameter
s。
这就是我到目前为止所拥有的。我在想我可以通过查询default === true
然后将它们写入任何新User
的来“自动加载”它们。但是,如果我更新默认列表,它不会被添加到现有用户中。
type User @model {
id: ID! @isUnique
industries: [Industry!]! @relation(name: "UserIndustries")
posts: [SocialPost!]! @relation(name: "UserPosts")
parameters: [Parameter!]! @relation(name: "UserParameters")
email: String @isUnique
}
type Parameter @model {
id: ID! @isUnique
parameter: String!
response: String!
user: User @relation(name: "UserParameters")
industry: Industry! @relation(name: "ParameterIndustry")
default: Boolean @defaultValue(value: false)
}
type SocialPost @model {
id: ID! @isUnique
message: String!
user: User @relation(name: "UserPosts")
industries: Industry! @relation(name: "SocialPostIndustry")
default: Boolean! @defaultValue(value: false)
}
type Industry @model {
id: ID! @isUnique
default: Boolean! @defaultValue(value: false)
industry: String!
users: [User!]! @relation(name: "UserIndustries")
posts: [SocialPost!]! @relation(name: "SocialPostIndustry")
parameters: [Parameter!]! @relation(name: "ParameterIndustry")
}
一个有助于解决这个问题的关键问题。如果我有一个@relation
between User
and Parameter
,并且我希望每个用户都说过Parameter
,但我希望每个用户的response: value
值都Parameter
不同,我该怎么做?