laravel - 控制器方法不起作用并且页面正在刷新而不是重定向到 laravel 中的给定路径
问题描述
我没有收到任何错误,它只是在该页面上刷新。在我给出重定向路径的地方不调用控制器方法。我的代码是:
刀片文件
<form action="{{route('validate-promocode')}}" method="post">
@csrf
<input class="promo-input" id="code" type="text" onkeyup="this.value = this.value.toUpperCase();" name="code" placeholder="EG. APPLY HERE"><br>
<input type="hidden" name="_token" value="{!!csrf_token()!!}">
<button id="save" type="submit" class="apply-promo">Apply Promo Code</button>
</form>
路由文件
Route::post('/validade-code', 'PromoController@validateCode')->name('validate-promocode');
控制器文件
public function validateCode(Request $request){
if (Gate::allows('isUser')) {
$ip = $request->input('code');
dd($promo);
$promo = Promo::where('code','=', trim($ip))->first();
if(!empty($promo)){
$dataamountMonthly = 40000 - (($promo->discount_percentage * 40000) / 100);
$dataamountYearly = 300000 - (($promo->discount_percentage * 300000) / 100);
if($dataamountMonthly == 0 || $dataamountYearly == 0){
return view('paymet.subscription-success');
}
$data = array(
'dataamountMonthly' => $dataamountMonthly ,
'dataamountYearly' => $dataamountYearly,
'code' => $ip
);
return view('payment.startPromoCode',$data);
}else{
$data = array(
'error' => 'Something went wrong, please try again'
);
return redirect()->back()->with($data);
}
}
}
我不知道我错过了什么,任何帮助都会得到帮助。
解决方案
已解决
有时您可能希望将用户重定向到他们之前的位置,例如当提交的表单无效时。您可以通过使用全局后退辅助函数来做到这一点。由于此功能使用会话,请确保调用 back 函数的路由正在使用 Web 中间件组或已应用所有会话中间件
推荐阅读
- android - android.hardware.nfc 的 Android 清单问题
- python - 从 C 代码为 Python 代码创建 dll 时出错
- javascript - 如何改变子组件的状态?
- powerbi - power bi DAX 分层表名称串联
- r - Y轴标签宽度打破了闪亮应用程序中两个图之间的对齐方式
- odata - Java OData 客户端使用 SAP Cloud SDK 问题
- tensorflow - Flaubert 模型中的 ModuleAttributeError
- python - 对于 Azure 上的 postgres,在 pg8000 上执行非常慢的命令
- c++ - 在 Linux(ubuntu) 中从 C++ 读取 arduino 串行数据
- android - AppAuth:使用 iOS 和 Android 应用程序获取授权码并在服务器上访问令牌