我在 Laravel 中使用 crud 技术,并且在通过一种形式从多个 table 中编辑和删除数据时遇到问题
I am using crud technique in Laravel, and having trouble in editing and deleting data from multi table through one form
我遇到了这个错误:
Undefined property: Illuminate\Database\Query\Builder::$id
代码:
$info = DB::table('info')
->join('projectdetails', 'info.id', '=', 'projectdetails.project_id')
->select('info.*', 'projectdetails.*')
->where('info.id',$id);
//dd($info);
return view('info.edit', compact('info'));
edit.blade.php
<form action="{{route('info.update',$info->id)}}" method="post">
您的 $info 是一个 Query Builder 对象,请尝试:
->where('info.id',$id)->first();
通过以下语法将参数传递给路由:
{{ route('info.update', ['id' => $info->id]) }}
其次,您的控制器应该会收到 $id
:
public function method(Request $request, $id)
{
// logic
}
最后,您必须通过在路由助手中使用 {id}
选项来确保您的路由需要 id
。一个例子是:
Route::get('model/{id}', 'ModelController@store');
希望对您有所帮助。
我遇到了这个错误:
Undefined property: Illuminate\Database\Query\Builder::$id
代码:
$info = DB::table('info')
->join('projectdetails', 'info.id', '=', 'projectdetails.project_id')
->select('info.*', 'projectdetails.*')
->where('info.id',$id);
//dd($info);
return view('info.edit', compact('info'));
edit.blade.php
<form action="{{route('info.update',$info->id)}}" method="post">
您的 $info 是一个 Query Builder 对象,请尝试:
->where('info.id',$id)->first();
通过以下语法将参数传递给路由:
{{ route('info.update', ['id' => $info->id]) }}
其次,您的控制器应该会收到 $id
:
public function method(Request $request, $id)
{
// logic
}
最后,您必须通过在路由助手中使用 {id}
选项来确保您的路由需要 id
。一个例子是:
Route::get('model/{id}', 'ModelController@store');
希望对您有所帮助。