php – ORM:友谊/佛教徒的关系
发布时间:2020-12-13 16:19:11 所属栏目:PHP教程 来源:网络整理
导读:我是第一次尝试使用ORM,我已经定义了这样的模型: 用户模型: class User extends Eloquent{ public function friends() { return $this-has_many_and_belongs_to('User','friends','user1_id','user2_id'); } } 朋友型号: class Friend extends Eloquent{
我是第一次尝试使用ORM,我已经定义了这样的模型:
用户模型: class User extends Eloquent { public function friends() { return $this->has_many_and_belongs_to('User','friends','user1_id','user2_id'); } } 朋友型号: class Friend extends Eloquent { public function friend() { return $this->belongs_to('User','user_id'); } } 朋友mysql表: id(pkey)#user1_id(引用users.user_id)#user2_id(引用users.user_id) 现在通过使用$user->朋友,我获得单边列表,因为朋友数据库参数可以是任何顺序(user1是user2的朋友或user2是user1的朋友).如果我试图使用跟随/追随者的方法,这将是好的,但我希望它是互惠的. 做这种事情的最佳方法是什么?在数据库上插入重复的user1 / user2和user2 / user1听起来不是一个好方法,我甚至不知道如何将其转换为ORM.而且,似乎Friend模型根本没有被使用/被调用. 我也会在邀请朋友系统上遇到类似的问题. 解决方法
你正在寻找用户之间的多对多关系:)
在Doctrine: Doctrine – Many to Many Self Referencing中查看如何执行此操作. Doctrine示例可能会帮助您入门. 这个想法是你有一个实体,用户,他们可以成为彼此的朋友. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |