Laravel 5

Tri sur champs traduit

  • Avatar de VincentPIEPLU
    Membre depuis :
    04/04/2015
    Messages :
    200

    Bonsoir,

    J'utilise le très bon package https://github.com/dimsav/laravel-translatable mais il y a une chose que je ne parvient pas à mettre en place, c'est le tri. Il est dit d'utiliser la jointure, et c'est ce que j'ai tenté de faire :

    $categories = \App\Model\Category::join('category_translations as ct', 'ct.category_id', '=', 'categories.id')
    ->orderBy('ct.name', 'asc')
    ->get();

    Si je fais un

    dd($categories[0]->name);

    Il m'affiche "NOUVEAUTE".

    Si dans la requête précédente, je remplace par un toSql, et que je lance la requête dans phpmyadmin, j'ai pourtant bien le tri, je ne comprend pas du tout.

    Des idées ?

    Merci

  • Avatar de VincentPIEPLU
    Membre depuis :
    04/04/2015
    Messages :
    200

    Je n'y comprend rien :

    $categories = \App\Model\Category::join('category_translations as ct', 'ct.category_id', '=', 'categories.id')
    ->where('locale', 'fr')
    ->orderBy('ct.name', 'asc')
    ->get();

    foreach($categories as $category)
    {
    dd($category);
    }

    Donne

    Category {#731 ▼

    attributes: array:8 [▼

    "id" => 54
    "code" => "M10"
    "created_at" => "2017-09-07 17:42:24"
    "updated_at" => "2017-09-07 17:42:24"
    "deleted_at" => null
    "category_id" => 18
    "name" => "ACCESSOIRES PLANTES"
    "locale" => "fr"

    Et si je fais

    dd($category->name);

    Il me dit null

    Je suis perdu !

  • Avatar de VincentPIEPLU
    Membre depuis :
    04/04/2015
    Messages :
    200

    Personne n'aurait une petite idée ?

Vous ne pouvez pas répondre à ce sujet.