/**
  * @param $trait
  * @param $faction
  * @return mixed
  */
 private function getFactionModelsByTrait($trait, $faction)
 {
     $modelsQuery = Models::whereHas('traits', function ($query) use($trait) {
         $query->where('trait', '=', $trait);
     });
     if ($faction) {
         $modelsQuery->whereHas('factions', function ($query) use($faction) {
             $query->where('faction', '=', $faction);
         });
     }
     $models = json_decode($modelsQuery->get()->toJSON());
     return $models;
 }