如何更新数据库中的某些值并设置关系

时间:2018-12-08 13:57:45

标签: php sql laravel

我要创建的网站是预订网站。我有3张桌子供预订。

available_rooms

id  room_number  room_type  status
 1      1        Standard      1
 2      2        Standard      1

预订

id checkindate checkoutdate room_type status
1  12/12/2018  12/13/2018    Standard  unpaid

客户

id  firstName lastName  phoneNumber  emailAdress
 1  test      test       999999       admin@admin.com

我要发生的事情是,在客户在预订请求中输入了所有必要的信息之后,它将被保存在这3个单独的表中。除 available_rooms 表未将状态更新为“ 0”(“ 1”(可用)和“ 0”(不可用))之外,其他所有操作都正常。我目前正在使用此代码尝试对其进行更新,但无法正常工作。

  $roomavailability = availableRoom::where('room_type', $request->session()->get('room_type'))
    ->update(['status' => 0]);

我认为我的表结构缺乏联系。我是laravel和sql的新手,我的问题是这种有关预订系统的方法正确吗?还是我错过了什么?我知道我需要为客户表和预订表建立关系,但我不知道将其放在何处。

1 个答案:

答案 0 :(得分:0)

您的状态是否列在

protected $fillable

在availableRoom模型上?

还是那个模特?通常,您会拥有一个房间模型,并将其可用性设置为属性。