Propel ORM:如果这样的对象不存在,如何仅保存对象
Posted
技术标签:
【中文标题】Propel ORM:如果这样的对象不存在,如何仅保存对象【英文标题】:Propel ORM: How to save Object only, if such an object doesnt already exist 【发布时间】:2010-12-17 21:04:10 【问题描述】:我正在使用 Propel ORM。我的一张表称为“朋友”,它的条目代表多对多关系。表“朋友”必须条目:
profile_id friend_profile_id这两个属性显然创建了 PrimaryKey。
现在我想用新信息更新这个表。所以我想像这样保存新的朋友条目:
$friendCon = new RplFriend();
$friendCon->setProfileId($profile->getId());
$friendCon->setFriendProfileId($friendProfile->getId());
$friendCon->save();
但是在这一点上,我不知道这样的条目是否已经存在。所以我从 Propel 收到很多“重复输入”错误。什么是最高效的方式,只保存一个新条目,如果它不存在?
【问题讨论】:
【参考方案1】:也许您应该尝试以下方法:
$friendCon_duplicate = RplFriendQuery::create()->findPK($profile->getId(),$friendProfile->getId());
if($friendCon_duplicate..
【讨论】:
【参考方案2】:设置数据库中这两个字段的唯一索引
【讨论】:
以上是关于Propel ORM:如果这样的对象不存在,如何仅保存对象的主要内容,如果未能解决你的问题,请参考以下文章