jeudi 5 janvier 2017

Set to default language if specific fields are empty?

What i want to check if some field is empty in translation, if it is then return articles for default language. Any suggestion how can i do this?

 public function getAllArticlesWithCurrentTranslation($current_language_id){

      $articles = Articles::has('translations')->get();
      $default_language = Languages::where('default',1)->first();
      $default_language_id = $default_language->id;
      foreach($articles as $article){
        $language_exists =  $article->translations()->whereHas('language',function($query) use($current_language_id){
          $query->where('id','=',$current_language_id);
        })->first();


        $cur_language = !empty($language_exists) ? $current_language_id : $default_language_id;

        $article->trans = $article->translations()->whereHas('language',function($query) use($cur_language){
          $query->where('id','=',$cur_language);
        })->first();
      }
      return $articles;
    }



from Newest questions tagged laravel-5 - Stack Overflow http://ift.tt/2iT07w0
via IFTTT

Aucun commentaire:

Enregistrer un commentaire