【发布时间】:2010-02-17 00:45:27
【问题描述】:
我正在尝试使用多个标签来“标记”多个“点”。我成功地标记了我的单点。不幸的是,当我尝试在另一个点上使用标签(例如“test2”)作为标签时,如果我将“唯一”设置为 false 或“唯一”设置为 true,则会出现重复输入错误,它将删除“test2”的所有其他点的我的标签并创建一个新的。
这是我的帖子数据:
Array
(
[Tag] => Array
(
[id] => 4b7af6d7-787c-4f10-aa49-2502c0a80001
[name] => Test2
)
[Point] => Array
(
[id] => 4b47c66f-a130-4d12-8ccd-60824051e4b0
)
)
在我的标签模型中,我有这个:
public $hasAndBelongsToMany = array(
'Point' => array(
'className' => 'Point',
'joinTable' => 'points_tags',
'foreignKey' => 'tag_id',
'associationForeignKey' => 'point_id',
'unique' => false)
);
我也尝试过将 'unique' 设置为 true。不幸的是,这将删除连接表 ('points_tags') 中的任何其他“Test2”实例。
我已经使用 save() 和 saveAll() 尝试过这个。两者都给我这个错误:
警告 (512):SQL 错误:1062:重复条目 '4b7af6d7-787c-4f10-aa49-2502c0a80001-4b47c66f-a130-4d12-8ccd-608' 键 'MAN_ADD' [CORE/cake/libs/model/数据源/dbo_source.php,第 527 行]
查询:插入points_tags(tag_id,point_id,id)值('4b7af6d7-787c-4f10-aa49-2502c0a80001','4b47c66f-a130-4d12-8ccd-60824051e4b0','4b7b39f3-46f8 -4744-ac53-3973c0a80001')
想法????
建议????
【问题讨论】:
标签: cakephp tags save has-and-belongs-to-many