简体   繁体   English

如何获取连接表中第一个表的ID

[英]How to get ID of the first table in a join table

I am able to get the id of the table books using the code below but how should I get the id of my fist table which is named reservation.我可以使用下面的代码获取表书的 ID,但我应该如何获取名为预订的第一张表的 ID。

$data=reservation::where('user_id',$id)
                ->join('books','reservations.books_id','=', 'books.id')
                ->get();

This is how I display the value of both table.这就是我显示两个表的值的方式。 I am able to get and display data from both table.我能够从两个表中获取和显示数据。

@foreach($data as $data)
<tr>
    <td align="center">{{$data->borrowed_books}}</td>
    <td align="center">{{$data->price}}</td>
    <td align="center">{{$data->reserved_qty}}</td>
    <td align="center">{{$data->books_fee}}</td>
    <td><a href="{{url('/deletemenu',$data->id)}}">CANCEL</a></td>
</tr>
@endforeach

The problem is, every time I click cancel to delete it from database the id that it gets is from the books table but I want the id of reservation table.问题是,每次我单击取消从数据库中删除它时,它获取的 id 来自 book 表,但我想要预订表的 id。 What should I do to delete the id of reservation table instead of books table.我应该怎么做才能删除预订表的 id 而不是书表。

public function deletemenu($id)
{
    $data=reservation::find($id); //it used to be $data=books::find($id);
    $data->delete();
    return redirect()->back();

}
   $data=reservation::where('user_id',$id)
            ->join('books','reservations.books_id','=', 'books.id')
            ->select('reservations.*', 'books.*')
            ->get();

if you have any columns that have the same name then in your select specify the column as so lets say both tables have column ID如果您有任何具有相同名称的列,那么在您的 select 中指定列,因此可以说两个表都有列 ID

  $data=reservation::where('user_id',$id)
            ->join('books','reservations.books_id','=', 'books.id')
            ->select('reservations.*', 'books.id as book_id')
            ->get();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM