【发布时间】:2021-02-25 03:57:12
【问题描述】:
我正在尝试获取所选订阅的 id 并将其传递给控制器,但由于某种原因,当我 dd() 或 print_r() 控制器中的 id 时,无论哪个订阅它都会返回相同的 id我点击。
无论我点击第一个“+”按钮还是第二个按钮,当我 print_r() 时它总是返回相同的 id。
Array ( [_token] => iFimNDCv0q4rq7OmmUWGN8SGr2Bq0brsiRMLIzBD [subscription] => 2 )
即使我点击第一个,它应该有 '1' 作为 id,它仍然返回 '2'。
这是我在 web.php 中的路径
Route::post('/transaction/store', 'TransactionController@store')->name('transaction.store');
这是控制器中的功能
public function store(Request $request)
{
// continue here
print_r($request->input());
}
这是负责发送 id 的表单标签(在刀片中的 foreach 语句中)
<form id="batch" action="{{route('transaction.store')}}" method="POST">
@csrf
<input type="hidden" name="subscription" value="{{$subscription->id}}" form="batch">
<button type="submit" class="btn btn-sm btn-outline-dark" form="batch">+</button>
</form>
非常感谢您的帮助!
【问题讨论】:
-
您正在创建多个表单,所有表单都带有一个隐藏的输入,其名称相同,引用相同的表单?
-
对于多个名称属性,使其动态
name="subscription[]"现在从控制器检查dd($request->subscription); -
@lagbox 在这个表格之外还有另一种表格,这就是我使用“表格”属性的原因,是的,里面还有隐藏的输入
-
它不是一种形式,它有很多是因为循环......所有这些隐藏的输入都引用了相同的形式名称
标签: laravel laravel-blade laravel-routing