CakePHP将数据保存到多个表

时间:2018-11-03 11:18:51

标签: cakephp

我正在使用CakePHP 3,并有一个注册表格,简而言之,您可以设置用户名,密码,电子邮件以及一些会员统计信息(例如体重,身高等)

因为我希望用户不断更新其统计信息,所以我觉得最好用外键将其包含在自己的表中。

我的挑战是在members数据库中创建用户,获取id并将其余数据插入member_stats数据库中,并设置member_id外键全部都在CakePHP 3框架内。

因此,特别是我需要#1在注册控制器中使用不同的模型,并且#2将数据从一种形式分为membermember_stats数据,并使用id成员以填充到外键。

1 个答案:

答案 0 :(得分:0)

Cakephp足够聪明,可以从Template中的html表单理解关系。

相关部分:

因此,当我们有User表和UserDetails表时,它们都像 用户明细属于用户,是指每个用户明细属于一个用户,每个用户具有一个明细。

从用户添加源中插入两个表

当您想将您的注册表格插入UserDetails时,Users/add.ctp

echo $this->Form->create($user);

输入UserDetails输入,但是名称不同,例如,如果weight中有UserDetails,则可以写类似 echo $this->Form->control('userdetails.weight'); 请注意,userdetails是与用户相关的第二个表名。

用户控制器

在添加操作中,您无需更改任何内容