Editar variante 3
Comprar curso

121. Editar variante 3


4 comentarios

Inicia sesión para comentar

Comentarios:

  • Jorgeoviedo.l

    Jorgeoviedo.l hace 1 mes

    Para los colegas que aun necesiten los codigos

    public function addNewFeature($option_id)

    {

    $this->validate([

    'new_feature.' . $option_id => 'required',

    ]);


     

    $feature = Feature::find($this->new_feature[$option_id]);


     

    $this->product->options()->updateExistingPivot($option_id, [

    'features' => array_merge($this->product->options->find($option_id)->pivot->features ?? [], [

    [

    'id' => $feature->id,

    'value' => $feature->value,

    'description' => $feature->description

    ]

    ])

    ]);


     

    $this->product = $this->product->fresh();


     

    $this->new_feature[$option_id] = '';


     

    $this->generarVariantes();

    }



    public function generarVariantes()

    {

    $features = $this->product->options->pluck('pivot.features');

    $combinaciones = $this->generarCombinaciones($features);




     

    foreach ($combinaciones as $combinacion) {


     

    $variant = Variant::where('product_id', $this->product->id)

    ->has('features', count($combinacion))

    ->whereHas('features', function ($query) use ($combinacion) {

    $query->whereIn('feature_id', $combinacion);

    })

    ->whereDoesntHave('features', function ($query) use ($combinacion) {

    $query->whereNotIn('feature_id', $combinacion);

    })

    ->first();


     

    if ($variant) {

    continue;

    }


     

    $variant = Variant::create([

    'product_id' => $this->product->id,

    ]);


     

    $variant->features()->attach($combinacion);

    }


     

    $this->dispatch('variant-generate');

    }

  • Jumede Bermudez

    Jumede Bermudez hace 2 meses

    No dejaste los código de las modificaciones 

  • Rafael Diaz

    Rafael Diaz hace 3 meses

    Tampoco dejaste el código de la modificación del  
    public function generarVariantes().

  • Rafael Diaz

    Rafael Diaz hace 3 meses

    Hola Victor. No dejaste el código de public function addNewFeature y no se alcanza a ver en el video. 

    • Victor Arana Flores hace 3 meses

      Hola Rafael, ahi lo comparto, disculpa.

    • Victor Arana Flores hace 3 meses

      En unas horas lo estoy publicando, que el proyecto lo tengo en otra computadora

    • Rafael Diaz hace 3 meses

      Gracias amigo. Ya lo implementé pero imagino para los que vengan a seguir el curso.