基于Join-> Laravel插入数据库

时间:2019-02-18 00:02:29

标签: laravel

我正在为laravel项目制作纸卷格式。

我已经成功创建了该卷,并且可以更新如下所示的卷表中的卷状态

|id|roll_id|member_id|status|created_at|updated_at|

我的状态之一是“使用优惠券中的资金使用现在的优惠券”

我有优惠券表

|id|member_id|voucher|date|balance|created_at|updated_at|

当用户单击卷中的“礼物/凭证”图标时,控制器中将调用以下内容

public function voucher($id)
{    
    $r = Roll::find($id);

    if ($r != null)
 {
    $r->status = "V";
    $r->save();

     return redirect(action('RollController@index'))->with ('success', 'Member Paid with Vocuher');
 }
 return redirect(action('RollController@index'));    
}

这很完美,我想知道如何在Voucher表中插入一条记录,虽然我可以在roll表中找到id记录,但是我需要拉出member_id以便将其添加到voucher中桌子

例如,如果“滚动记录”看起来像这样

|id|roll_id|member_id|Status|
|20|2|13|V|

我需要从记录20中获取13个会员ID,以便我可以在凭证表中插入

|id|member_id|voucher|date|balance
|2|13|Weekly Fees|currdate|-10

请注意,这10个也存储在设置表中,因此,如果我可以从该表中获取数据,那就太好了

设置表:

|id|Setting|Value|
|1|weekly Subs|10|

谢谢

1 个答案:

答案 0 :(得分:1)

您可以先定义model relationship

会员

.imagePreview {
  position: relative;
}

.imagePreview img {
  pointer-events: none;
}

[type="file"] {
  cursor: pointer; /* <-- Let people know it's clickable */
  opacity: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

滚动

<div class="uploader boxCorners">
  <div class="imagePreview"> 
    <img alt="Super cute cat" src="http://placekitten.com/200/200" />
    <input type="file">
  </div>
</div>

优惠券

class Member extends Model {
    public function vouchers()
    {
        return $this->hasMany('App\Voucher');
    }
}

然后您可以在控制器中流畅地执行,还应该使用class Roll extends Model { public function member() { return $this->belongsTo('App\Member'); } } class Voucher extends Model { public function member() { return $this->belongsTo('App\Member'); } public function setting() { return $this->belongsTo('App\Setting'); } }

lockForUpdate