나는 id
, questions
및 marks
을 포함하는 테이블 을 가지고 있습니다. 그런 다음 id
및 quiz_name
을 포함하는 테이블 quizzes
이 있습니다. 나는 id
테이블에서 테이블과 id
테이블에서 question
테이블을 포함하는 question_quizzes
라는 브리지 테이블을 만들었습니다. 어떻게 question_quizzes
의 형태로 questions
테이블에 모든 데이터 (id
, questions
, marks
)를 표시 할 수 있습니까?다른 모델의 데이터 가져 오기 cakephp 3.5
EDIT :이 questionQuizzes 제어기 내부 existingQuestion 기능
이다. existingQuestion 기능, 나는) (이것은 내가 내 코드를 편집 한
class QuestionQuizzesTable extends Table
{
/**
* Initialize method
*
* @param array $config The configuration for the Table.
* @return void
*/
var $name = 'QuestionQuizzes';
public function initialize(array $config)
{
parent::initialize($config);
$this->setTable('question_quizzes');
$this->belongsTo('Quizzes', [
'foreignKey' => 'quiz_id',
'joinType' => 'INNER'
]);
$this->belongsTo('Questions', [
'foreignKey' => 'question_id',
'joinType' => 'INNER'
]);
}
/**
* Returns a rules checker object that will be used for validating
* application integrity.
*
* @param \Cake\ORM\RulesChecker $rules The rules object to be modified.
* @return \Cake\ORM\RulesChecker
*/
public function buildRules(RulesChecker $rules)
{
$rules->add($rules->existsIn(['quiz_id'], 'Quizzes'));
$rules->add($rules->existsIn(['question_id'], 'Questions'));
return $rules;
}
}
questionQuizzesTable
하지만 여전히 오류 "멤버 함수의 발견에 전화가 질문 테이블class QuestionQuizzesController extends AppController
public function existingQuestion()
{
$query = $questionQuizzes->find('all')->contain('Questions');
foreach ($query as $questionQuizzes) {
echo $questionQuiz->question->id;
}
}
을 모두 표시 할 에 null ". 아무도 나를 도울 수 있습니까 ?? 내가 갇혔다
https://book.cakephp.org/3.0/en/orm/associations.html – urfusion
질문 표에있는 모든 데이터를 question_quizzes 형식으로 추가하고 싶습니다. 그래서, 질문 컨트롤러 또는 question_quizzes 컨트롤러에 작업 쿼리를 넣어야합니까? –
이 게시물을 수정했습니다. –