【发布时间】:2017-06-23 04:48:27
【问题描述】:
我已经在 Laravel 中开发一个需要用户之间评分系统的 Web 应用程序。所以,我一直在这里和那里阅读 Laravel 文档和一些帖子,但我一直想知道哪种方法是完成我想做的事情的最佳方式。我无法在接下来的两个选项之间做出决定。
我目前的表是:
用户 (id) | 费率(id、发件人、评论、费率) | user_rate (id,user_id,rate_id)
我当前的用户模型:
public function rates_sent(){
return $this->hasMany(Rate::class,"sender");
}
public function rates(){
return $this->belongsToMany(Rate::class);
}
我当前的费率模型:
public function sender(){
return $this->belongsTo(User::class,"sender");
}
public function receiver(){
return $this->belongsToMany(User::class);
}
第二个选项是:
用户 (id) | 费率(id,sender,receiver,comment,rate)
用户模型:
public function rates_sent(){
return $this->hasMany(Rate::class,"sender");
}
public function rates_received(){
return $this->hasMany(Rate::class,"receiver");
}
费率模型:
public function sender(){
return $this->belongsTo(User::class,"sender");
}
public function receiver(){
return $this->belongsTo(UseR::class,"receiver");
}
那么,两者都是好的解决方案吗?一种选择是否比另一种更容易接受?还有其他更好的选择吗?
抱歉我的英语不好。提前致谢
【问题讨论】:
标签: php laravel database-design laravel-5.3