2014-11-20 103 views
0

我有3個模型1)questions 2)Answers 3)comments - 每個答案都有一個問題 - 每個評論都有問題或答案,而不是兩個都有。將模型與2關聯關係node.js

如何在我的模型中定義上述關聯?

+0

我想你必須添加一個名爲'associationId'的字段和另一個名爲'associationType'的字段。在'associationType'中,關聯的存儲類型(例如'ENUM(「Question」,「Answer」)') – 2014-11-20 21:02:10

+0

我會嘗試這個選項。我忘記提及,如果我只聲明2有評論關係,我就面臨一個問題。我認爲這不會有幫助。 – 2014-11-20 21:11:26

+0

您使用任何ORM嗎? – 2014-11-20 21:12:38

回答

0

您的評論模式更改爲類似這樣:

... 
associationId : { type: 'integer' } 
associationType : ["Question", "Answer"] 
... 

,當你想使用這個關係,首先選擇comment並檢查其associationType,如果它是Question然後從questionassociationId選擇,如果它如果你想使用hasOneAnswerAnswerassociationId

選擇,你必須聲明你的模型有一個名爲場和另一個字段名爲answerId,並將它們的默認值設置爲0,並且當您要使用它時,請檢查非零字段並從所需表中獲取數據。

+0

你的意思是說不需要聲明一個關係?我明白你的意思,但會呼籲改變我的模型結構。我已經有一個關係定義 – 2014-11-20 21:33:49

+0

看到我更新的答案 – 2014-11-20 21:38:19