我对Laravel相对较新,并且在过去3周的实习期间一直在研究它,但现在我遇到了问题。
我有3个表:用户,出价和工作。我希望用户能够对作业进行出价。
我的表格的基本结构如下:
Users:
id | name | email | description
Jobs:
id | title | description
Bids:
id | proposal
需要满足以下条件:
实施例: 用户1在作业1上提出300英镑的建议。这将创建一个id为1和300英镑的出价。数据透视表将包含用户ID(1),作业ID(1)和出价ID(1)以及默认情况下将设置为待定的状态。
我还希望链接所有3的表具有状态。我按如下方式创建了一个:
bid_job_user:
bid_id | user_id | job_id | status
但是关系都是错误的,因此如果我想更新状态,同步方法等将无法正常工作。 任何帮助都会受到赞赏,即使这是我应该如何定义我的关系。
我无法将用户链接到表(job_user)中的作业,因为这已经在其他地方定义为多对多关系,因为管理员(用户)可以创建许多作业,并且许多管理员可以创建作业。
如果您需要更多信息,请询问。
答案 0 :(得分:3)
要创建出价表(根据评论),您可以将其视为交叉点实体。
<!-- User.php -->
//should recognize user_id,job_id by itself
public function bidsMade() {
return $this->belongsToMany('App\Job','bids')->withPivot('status','proposal');
}
<!-- Job.php -->
//should recognize user_id,job_id by itself
public function bidsRecieved() {
return $this->belongsToMany('App\User','bids')->withPivot('status','proposal');
}