Besoin d'aide ?

Relation hierarchique

Avatar de Atef
Atef

Salut les gars

J'ai un systeme pour gerer les " fripes" ou bien les lots de vêtement

Les lots ont 3 niveaux ( on peut ajouter plus au futur)

1ér Niveau : définir le lot (parent) en ajoutant l'id du pays ( country_id)

2eme Niveau : définir un ou plusieurs lots qui hérite du premier avec des informations supplementaires comme ( category_id , season_id)

3eme Niveau : définir un ou plusieurs lots qui hérite du deuxieme avec des informations supplementaires comme ( quality_id , price_id)

J'ai crée mon entité qui s'appelle Batch comme ci dessous

 public function country()
    {
        return $this->belongsTo(Country::class, 'country_id');
    }

    public function season()
    {
        return $this->belongsTo(Season::class, 'season_id');
    }

    public function category()
    {
        return $this->belongsTo(Category::class, 'category_id');
    }

    public function quality()
    {
        return $this->belongsTo(Quality::class, 'quality_id');
    }

    public function parent()
    {
        return $this->belongsTo($this, 'parent_id');
    }

    public function children()
    {
        return $this->hasMany($this, 'parent_id', 'id');
    }

Je me demande est ce que je dois sauvegarder les champs supplementaires à chaque niveau comme valeur nulle (optionnel) ?

Sinon je dois duppliquer les valeurs du niveau précedent ?

Je me suis tombé dans un petit problem , car je n'arrive pas à afficher les lots venant de la france ou bien de la saison d'été ou hiver par exemple...

je dois monter dans l'hierarchie pour savoir est ce que le premier parent contient ce que je cherche ou pas ..

Est ce que la dénormalisation est plus adequate dans ce cas là ?

Merci d'avance!

Vous ne pouvez pas répondre à ce sujet.