不能多次引用变量名“id”

我需要在我的子活动 ID 中按 ID 删除预订

http://img1.mukewang.com/61ee029b000142d508130590.jpg

 Route::delete('event/{id}/booking/{id}', 'bookingController@destroy');

我的控制器

    public function destroy($id)    {
        booking::destroy($booking->id);        return redirect('event')->with('flash_message', 'ลบข้อมูลการสำรองที่นั่งเรียบร้อย');
    }

我的方法删除

<form method="POST" action="{{ url('event/' . $event->id .'/booking/' . $booking->id) }}" accept-charset="UTF-8" style="display:inline">
                            {{ method_field('DELETE') }}
                            {{ csrf_field() }}
                            <button type="submit" class="btn btn-danger btn-sm" title="Delete event" onclick="return confirm(&quot;Confirm delete?&quot;)"><i class="fa fa-trash-o" aria-hidden="true"></i>ยกเลิกการจอง</button>
                        </form>


不负相思意
浏览 144回答 2
2回答

GCT1015

您的路线有两个变量 (event_id) 和 (booking_id),但您的方法只有一个 ($id) 使用您现有的路线(这不符合 eloquent 的工作方式)网页.phpRoute::delete('event/{event_id}/booking/{booking_id}', 'bookingController@destroy')->name('booking.destroy');刀刃action = "{{ route('booking.destroy', $event_id, $booking_id) }}"控制器public function destroy ($booking_id, $event_id)您可能想在这里查看 laravel 关系: https ://laravel.com/docs/6.x/eloquent-relationships会让你的生活更轻松,因此 eloquent 会传递一个实例,你的 destroy 方法看起来像这样public function destroy (Booking $booking){&nbsp;$event = $booking->event();&nbsp;// Do something with related event&nbsp;// or vice versa}

明月笑刀无情

ID是两个独立的ID吗?还是他们共享相同的ID?如果它们是两个独立的 ID,那么您需要给它们两个明确不同的名称,例如 booking_id 和 event_id,然后您就可以在 Controller 中随意访问它们。&nbsp;Route::delete('event/{event_id}/booking/{booking_id}', 'bookingController@destroy');然后在你的控制器中你可以做&nbsp; &nbsp; public function destroy($event_id, $booking_id)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; ...&nbsp; &nbsp; }如果我没记错的话,控制器方法中的参数不需要与路由中的参数命名完全相同(尽管它会让你的生活更轻松)。参数是按顺序传递的,所以你可以这样做&nbsp; &nbsp; //$A = event_id, $B = booking_id&nbsp; &nbsp; public function destroy($A, $B)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; ...&nbsp; &nbsp; }
打开App,查看更多内容
随时随地看视频慕课网APP