从Laravel中的两个相关表中查询值

时间:2019-11-13 10:45:02

标签: laravel

我有相关的表事件和相关的票证

class Event {
  public function tickets(){
    return $this->hasMany(Ticket::class);
  }
}

class Ticket {
  public function events(){
    return $this->belongsTo(Event::class);
  }
}

我有一个存储功能,用于从中获取数据并路由URL

$ticket=new Ticket;
$ticket->userName= $request->input('userName');
$ticket->userEmail= $request->input('userEmail');
$ticket->phoneNumber= $request->input('phoneNumber');
$ticket->regular_quantity= $request->input('regular_quantity');
$ticket->vip_quantity= $request->input('vip_quantity');
$ticket->event_id=$request->route('id');

我有一个变量max_attendees,我想查询最大参加者,这是事件表中事件ID为

的一列
$ticket->event_id=$request->route('id');

查询

$maximum_attendants=\App\Models\Event::with('Max_attendies')->where('id','=='$event_id');

事件表 enter image description here

我已经尝试过,但是给我语法错误,意外的'event_id'(T_STRING),期望')'

2 个答案:

答案 0 :(得分:1)

您在where子句中缺少,

where('id','==', $event_id)

答案 1 :(得分:0)

如果您要从“机票”表中计算出勤人数,则可以使用关系来进行计数,

$event = Event::find($id);
$event->tickets()->count();