我还是这个概念的新手,这是我在几年前实现的,自从我开始使用laravel之类的框架以来,我再也没有做过。
这是代码。
<?php
namespace App\Http\Controllers;
use App\Http\Classes\SearchSubscriptionProduct;
use Corals\Modules\Subscriptions\Models\Product;
use Illuminate\Http\Request;
class SearchWideController extends Controller
{
/**
* Searching methods
*
* @param Request $request
* @return string
*/
public function subscriptionProductSearch(Request $request)
{
$search = $request->input('search_value');
$uri = $request->input('uri');
list($value, $option) = explode('/', $search);
$class = "Product";
$out = (new SearchSubscriptionProduct('subscriptions_products', (new $class)))
->search($value, $option);
return response()->json([
'value' => $search,
'option' => $option,
'html' => $out->getSearchTemplate(),
'result' => $out->models(),
]);
}
}
我希望这部分是动态的。
$class = "Product";
$out = (new SearchSubscriptionProduct('subscriptions_products', (new $class)))
->search($value, $option);
我想根据请求在$class
变量上分配不同的类名。 $ class应该是一个模型,并根据给定的模型执行搜索。
现在我只是做了类似$class = "Product";
的事情,看看我的想法是否可行。
不是当我尝试通过ajax提交数据时,而是我收到了此返回的错误消息
"Class 'Product' not found"
有可能吗?正确的方法是什么?