如何更改数据库中 select 下拉列表的值
How to change value from select dropdown in database
我想更改下拉列表中的值,但我是新手而且我有点迷路。
这是我的控制器方法:
public function changeStatus(Request $request)
{
$lead = Lead::find($request->id);
$lead = array(
'status_id' => $request->status_id
);
Lead::whereId($request->id)->update($lead);
return redirect()->back()
->with(['toast' => ['message' => 'Lead Status updated successfully !']]);
}
这是我在 vuejs 文件中的下拉菜单:
<select v-model="lead.status_id" @change="onChanges()" class="form-select form-control">
<option v-for="status in statuses"
:value="status.id"
:key="status.id"
>
{{ status.status_name }}
</option>
</select>
这是我在 vue js 中的方法:
onChanges(id,status_id) {
this.$inertia.post(
route("changestatus",{
id:id,
status_id:status_id,
}),
);
},
路由没问题,问题可能出在我的方法上
我认为您应该将正确的值传递给您的 onChanges 方法。
当您使用 @change="onChanges()" 时,您应该使用与声明时相同的参数调用它 - id 和 status_id.
所以应该是这样的
@change="onChanges(lead.id, $event)"
在 js 中
onChanges(id,event) {
var status_id = event.target.value;
this.$inertia.post(
route("changestatus",{
id:id,
status_id:status_id,
}),
);
我想更改下拉列表中的值,但我是新手而且我有点迷路。
这是我的控制器方法:
public function changeStatus(Request $request)
{
$lead = Lead::find($request->id);
$lead = array(
'status_id' => $request->status_id
);
Lead::whereId($request->id)->update($lead);
return redirect()->back()
->with(['toast' => ['message' => 'Lead Status updated successfully !']]);
}
这是我在 vuejs 文件中的下拉菜单:
<select v-model="lead.status_id" @change="onChanges()" class="form-select form-control">
<option v-for="status in statuses"
:value="status.id"
:key="status.id"
>
{{ status.status_name }}
</option>
</select>
这是我在 vue js 中的方法:
onChanges(id,status_id) {
this.$inertia.post(
route("changestatus",{
id:id,
status_id:status_id,
}),
);
},
路由没问题,问题可能出在我的方法上
我认为您应该将正确的值传递给您的 onChanges 方法。 当您使用 @change="onChanges()" 时,您应该使用与声明时相同的参数调用它 - id 和 status_id.
所以应该是这样的
@change="onChanges(lead.id, $event)"
在 js 中
onChanges(id,event) {
var status_id = event.target.value;
this.$inertia.post(
route("changestatus",{
id:id,
status_id:status_id,
}),
);