【发布时间】:2015-01-30 12:54:19
【问题描述】:
我使用的是 cakephp 2.6
我已经设置了3个表如下(简化):
带有 id、fname、lname、电话的“people”表...
带有 id、skillname 的“技能”表。
带有 id、person_id、skill_id、score 的“people_skills”表
我在技能表中列出了 18 项技能,例如法律、IT、筹款等,用户可以为每项技能打分 1、2 或 3。
我相信模型设置正确,因为我可以执行 $this->PeopleSkill->find('all') 并且我的视图很高兴地显示了一个表格,其中包含正确的人名行,技能名称,以及他们在该技能上的得分。
我正在尝试创建一个显示一个人并列出所有 18 项技能的表单,每个技能的单选按钮分别对应分数 1、2 或 3,以便快速填写 1 人的每项技能的分数。
提交将向数据库写入 18 行,每行将包含 person_id(所有人都相同)、一个 Skill_id 以及该技能的相应分数。
我是 cakephp 新手,有时我仍然无法使用 form/mysql 魔法,这让我想恢复到原始的 php 循环和 mysql 调用。但我认为学习蛋糕的方法会更好。
我目前失败的实验让我遍历技能列表并尝试逐行构建表格,但我很确定我完全走错了方向,因为正确的表格应该可以保存行动更容易。
今晚我一直在研究 saveMany 方法,但我不知道如何构建表单以创建适当的数组,以及如何最好地保存它。我需要创建某种保存循环吗?
如果您需要查看我的模型、控制器或视图的某些部分,请告诉我,我会很乐意分享您想看的任何内容。
非常感谢您的帮助。
【问题讨论】:
-
请输入您目前尝试过的一些代码。
-
是所有插入的结果还是 MySQL 的插入和更新的混合?
-
如果 cakephp 的魔法可以让插入或更新变得容易,就像在我的一些更简单的形式中一样,那就太好了,但首先我很高兴能够进行所有插入。我已经添加了我当前的控制器和查看代码以供参考。
标签: cakephp