【发布时间】:2019-08-26 17:28:05
【问题描述】:
我正在做一个项目来列出用户的运动技能。 一个用户最多可以练习 5 项运动,并且每项运动都有一个技能等级(0 到 5)。
我将这 3 个表格链接到另一个名为“user_sports_and_skills”的第 4 个表格。
所以我有 4 张桌子: 用户, 运动的, 技能, user_sports_and_skills
我们的想法是为“user_sports_and_skills”表中的每个新关系设置一个主键,并为其他 3 个表设置一个外键。
那么,第一个问题:这是一个好方法吗?
第二个问题: 我想要做的是在 cakephp 3 中正确设置我的模型和控制器,以干净的方式创建条目。
我已阅读文档,特别是:https://book.cakephp.org/3.0/en/orm/associations.html
所以我尝试了这样的方法,导致我出现约束错误:
class UsersTable extends Table
{
public function initialize(array $config)
{
$this->belongsToMany('user_sports_and_skills', [
'through' => 'sports', 'skills',
]);
}
}
那么也许我应该为“user_sports_and_skills”创建一个实体并以不同的方式编写我的模型?
谢谢!
【问题讨论】:
标签: ajax database cakephp-3.0