どうすればこのようにすることができますか?これを実現する方法laravel 5雄弁
public function getInformation($model) {
$result = $model::with(['province', 'city']);
if($model == 'App\Models\Business') {
$result->with(['businessProvince', 'businessCity']);
}
$result->get();
}
// call the function
$information->getInformation(\App\Models\Business::class);
私はクラスを照らし\データベースのエラー
オブジェクトを取得しています\雄弁\ Builderは は、上記のサンプルコードで列に
を変換することができませんでした。どんな提案も本当に感謝しています。
上記の示唆から離れて、$ result = $ model :: with(['province'、 'city']); 'else条件のif部分。 – karmendra
これはどうしてやりますか?あなたは$ model :: with(['province'、 'city'、 'businessProvince'、 'businessCity']); 'この' if'部分を入れなければなりません。コードの同じ部分に都道府県と市の熱心な負荷を2回提供する必要があります。 IMHOこれはより読みやすいようです。 –
私の一部では動作しません。私の目標はその方法を再利用することであり、ビジネスモデルだけが「businessProvince」と「businessCity」の関係を持っています。 – Juan