【发布时间】:2019-01-18 15:59:13
【问题描述】:
我有 3 个模型,它们都继承了抽象的 Plan 模型、BehaviourPlan、AffirmationPlan 和 ProfilePlan
是否可以让所有这些都通过同一条路线提供服务?这是我到目前为止所得到的,但是因为Plan 是抽象的,所以它会抛出Target [App\Plan] is not instantiable.
Route::prefix('plans')->group(function () {
Route::get('/{plan}', function (\App\Plan $plan) {
dd($plan);
});
});
【问题讨论】:
-
我怀疑你要么必须使
Plan非抽象,要么使用Model作为类型提示。 -
您可以将路由指向一个控制器,然后实例化这三个模型并在该控制器中使用它们
-
@AmritShrestha 我认为您误读了这个问题。 OP 想要
plan路由采用 几个 可能的类之一,每个类都继承自父App\Plan。有点像多态关系。