4 回答
TA贡献1865条经验 获得超7个赞
Instead of calling controller methods, the better practice is that you can create traits like: app/Traits and extend in controller
//特征
trait traitName {
public function getData() {
// .....
}
}
//控制器
class ControlelrName extends Controller {
use TraitName;
}
TA贡献1880条经验 获得超4个赞
改变:
public function getPaymentFailed($paymentId)
至:
public static function getPaymentFailed($paymentId)
这将通过执行以下操作使其在您的 SmartpaySController 中静态可用:
PaymentController::getPaymentFailed($paymentId);
TA贡献1802条经验 获得超4个赞
我建议您不要将函数从一个控制器调用到另一个控制器。制作助手、资源或以其他方式实现相同的功能
永远不要使用控制器作为对象
但是,如果你想这样做,你可以使用:
SomeController.php
class SomeController extend Controller {
public function someFunction(Request $request) {
// Here Some Code
}
}
你的控制器.php
use SomeController;
...
public function getPaymentFailed(Request $request, $paymentId) {
$controller_data = (new SomeController)->someFunction($request);
$transactionData = $this->paymentRepo->find($paymentId);
if($transactionData) {
$data['quote'] = $this->quoteRepo->getQuoteById($transactionData->quote_id);
$data['metaTitle'] = 'Payment failed';
$data['returnMessage'] = $transactionData->return_message;
return view('payment::payment.quote_payment_failed', $data);
}
}
- 4 回答
- 0 关注
- 121 浏览
添加回答
举报