【问题标题】:Laravel 4 Relationship: a message belong to two userLaravel 4关系:一条消息属于两个用户
【发布时间】:2013-09-14 00:53:26
【问题描述】:

我正在 laravel 4 中创建用户到用户的消息传递系统。所以在简化版本中我​​必须表

第一张桌子

用户

user_id | 用户名

第二张桌子

消息

message_id | message_from_user_id | message_to_user_id | 消息内容 |

所以在阅读了文档后,我了解到用户有很多消息并且消息属于用户。

但是我如何在编码中真正将它们联系起来呢?

我很困惑在这种情况下我将如何将外键用于将有两个用户的消息?

【问题讨论】:

标签: php laravel laravel-4


【解决方案1】:

看看这个:http://laravel.com/docs/eloquent#many-to-many

基本上你需要这样的表结构

用户:id |用户名

消息:id |来自 |内容

user_messages:user_id | message_id


你可以这样定义你的模型

class User extends Eloquent {

    public function messages()
    {
        return $this->belongsToMany('Message');
    }

    public function sent_messages()
    {
        return $this->hasMany('Messages', 'from');
    }

}

class Message extends Eloquent {

    public function from()
    {
        return $this->belongsTo('User', 'from');
    }

    public function to()
    {
        return $this->belongsToMany('User');
    }
}

【讨论】:

    猜你喜欢
    • 2014-10-15
    • 1970-01-01
    • 2021-08-24
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-12
    • 1970-01-01
    相关资源
    最近更新 更多