【问题标题】:One to many relationhip for 3 models in CakePHPCakePHP 中 3 个模型的一对多关系
【发布时间】:2014-06-22 15:30:23
【问题描述】:

我有三个模型用户、问题、答案。用户有很多问题,问题有很多答案,但 CakePhp 在 WHERE 子句中显示错误?三个模型如何关联?

我正在尝试

用户模型

var $hasMany = array(
 'Question' => array(
 'className' => 'Question',
 'foreignKey' => false,
 'conditions' => 'Question.user_id = User.id'
 )
);

答案模型

var $hasMany = array(
 'Answer' => array(
 'className'=> 'Answer',
 'foreignKey'=> false,
 'conditions'=> array('Question.id = Answer.question_id')
 )
);

答案模型:

var $belongsTo = array(
    'Question' => array(
        'className'=> 'Question',
        'foreignKey'=> false,
        'conditions'=> array('Question.id = Answer.question_id')
    )
);

提前感谢您的帮助。对不起我的英语不好。

【问题讨论】:

  • 为什么要将 foreignKey 设置为 false 并定义(或至少尝试)等效条件? CakePhp shows me error in WHERE clause

标签: cakephp


【解决方案1】:

我认为这是一个设计问题而不是技术问题,

试试这个:

关系

users - can take/"be taken by" many - exams

exams - contain/"belongs to" many - questions

表格

用户:id - 等等

问题:id - question - category/topic_id 等

考试:id - user_id - question_id - answer等

& 最后使用hasMany through

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多