我有以下型号:
1. Campaign
2. Coupon
3. CampaignCoupon
CampaignCoupon
是许多人Campaign
和Coupon
的一对多关系透视表的模型。
我有以下CampaignCoupon
模型的关系:
public function coupons() {
return $this->belongsToMany('App\Coupon', 'campaign_coupon','campaign_id','coupon_id');
}
public function campaigns() {
return $this->belongsToMany('App\Campaign', 'campaign_coupon','campaign_id','coupon_id');
}
在请求我得到coupon_id
和campaign_id
现在我想用Coupon
模型得到Campaign
和CampaignCoupon
数据。
以下是我使用的查询:
$CampaignCoupon = CampaignCoupon::where('campaign_id', $input['campaign_id'])
->where('coupon_id', $input['coupon_id'])
->with(['coupons', 'campaigns'])
->first();
但它返回的优惠券和活动的空数组。
{"id":95,"campaign_id":21,"coupon_id":25,"max_usage":21,"coupons":[],"campaigns":[]}
任何一个可以帮助?
使用这种关系,而不是你的
public function coupons() {
return $this->belongsTo('App\Coupon','coupon_id');
}
public function campaigns() {
return $this->belongsTo('App\Campaign','campaign_id');
}