我正在嘗試創建一個應用程序,您可以在其中創建和回答測驗。 創建部分已經完成,我可以保存測試,問題和答案。CakePHP如何在一個視圖中顯示來自三個相關模型的數據?
它們之間的關係:
Test $hasMany Question
Question $hasMany Answer
我創建了一個viewTest示出了一個選擇的測試和使用的foreach它的相關問題:
echo $test['Test']['id'];
echo '</br>';
foreach ($test['Question'] as $question){
echo $question['text'];
echo '<br>';
我如何可以檢索與每個問題的答案數據?
*編輯*
測試模型關係:
public $hasMany = array('Question' => array('className' => 'Question', 'foreignKey' => 'idTest'));
哪裏idTest是對數據庫的外鍵
問題型號的關係:
public $belongsTo = array('Test' => array('className' => 'Test', 'foreignKey' => 'idTest'));
public $hasMany = array('Answer' => array('className' => 'Answer', 'foreignKey' => 'idQuestion'));
應答模型關係:
public $belongsTo = array('Question' => array('className' => 'Question', 'foreignKey' => 'idQuestion'));
測試返回:
array (size=2)
'Teste' =>
array (size=4)
'id' => string '2' (length=1)
'dataLimite' => string '2014-09-25' (length=10)
'valorTeste' => string '2' (length=1)
'numQuestoes' => string '2' (length=1)
'Questao' =>
array (size=2)
0 =>
array (size=3)
'id' => string '3' (length=1)
'idTeste' => string '2' (length=1)
'descricao' => string 'questao1 ' (length=9)
1 =>
array (size=3)
'id' => string '4' (length=1)
'idTeste' => string '2' (length=1)
'descricao' => string 'dfsdfa' (length=6)
,將在試驗了同樣的看法,問返回:
array (size=3)
'id' => string '3' (length=1)
'idTeste' => string '2' (length=1)
'descricao' => string 'questao1 ' (length=9)
編輯
有關問題的查看,問題返回:
array (size=3)
'Questao' =>
array (size=3)
'id' => string '3' (length=1)
'idTeste' => string '2' (length=1)
'descricao' => string 'questao1 ' (length=9)
'Teste' =>
array (size=4)
'id' => string '2' (length=1)
'dataLimite' => string '2014-09-25' (length=10)
'valorTeste' => string '2' (length=1)
'numQuestoes' => string '2' (length=1)
'Alternativa' =>
array (size=2)
0 =>
array (size=5)
'id' => string '1' (length=1)
'idQuestao' => string '3' (length=1)
'isRespostaCerta' => boolean false
'respostaUsuario' => null
'descricao' => string 'alternativa 1' (length=13)
1 =>
array (size=5)
'id' => string '2' (length=1)
'idQuestao' => string '3' (length=1)
'isRespostaCerta' => boolean true
'respostaUsuario' => null
'descricao' => string 'alternativa 2' (length=13)
測試$的hasMany問題 - 問題$的hasMany答案; 這兩個聲明中的「問題」是一樣的嗎? 如果是,那麼類似這樣的事情:'echo $ question ['answers']' – Suryavanshi 2014-09-26 00:41:22
在你的問題模型中,你是否描述了問題和答案之間的關係? – 2014-09-26 06:08:22