Как отображать данные в режиме множественного выбора с помощью Eloquent Laravel

#php #laravel #eloquent #edit #multi-select

#php #laravel #eloquent #Редактировать #множественный выбор

Вопрос:

я хотел бы показать данные, которые были сохранены ранее в режиме множественного выбора. У меня есть таблица продуктов, которая подключена один ко многим к таблице сведений о промо, и я хочу отобразить продукты, которые были выбраны ранее, после чего пользователь может отредактировать ее при необходимости. Вот моя модель продукта

     protected $table = 'm_product';

    protected $primaryKey ='id';

    protected $fillable = ['kode','id_kategori', 'foto_product', 'product', 'stok', 'stok_opname', 'ppn', 'harga', 'deskripsi', 'created_by', 'created_at', 'changed_by', 'updated_at', 'delete'];
    
    public $timestamps = true;

    public function kategori() {
        return $this->belongsTo('AppKategori', 'id_kategori');
    }

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

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

и вот моя подробная модель промо

 protected $table = 'tb_promo_detail';

protected $primaryKey ='id';

protected $fillable = ['id_promo','id_kategori', 'id_product', 'det_potongan', 'det_jumlah_potongan'];

public $timestamps = false;

public function promo() {
    return $this->belongsTo('AppPromo', 'id_promo');
}

public function produk() {
    return $this->belongsTo('AppProduk', 'id_product');
}
  

Вот мой blade.php

 <div class="form-group row " id="inputbarang">
    <label class="col-form-label col-lg-3 col-sm-12">Barang</label>
            <div class="col-lg-4 col-md-9 col-sm-12">
                <select class="form-control m-select2" width="500px" id="kt_select2_1" name="id_product[]" multiple="multiple">
                        <option value=""></option>
                        @foreach($produk as $p)
                        <option value="{{ $p->id }}" {{ $p->id == $detpromo->id_product ? 'selected' : '' }}>{{ $p->product }}</option>
                        @endforeach
                </select>
            </div>
</div>
  

и вот мой контроллер

 $promo = Promo::find($id);

$detpromo = DetailPromo::where('id_promo', $id)->pluck('id_product')->toArray();

$produk = Produk::where('m_product.delete', 0)
        ->where('id_kategori', 1)
        ->orWhere('id_kategori', 2)
        ->orWhere('id_kategori', 3)->get();


$kategori = Kategori::where('delete', 0)->pluck('id');

return view('promoharirayaedit', ['promo' => $promo, 'detpromo' => $detpromo, 'produk' => $produk, 'kategori' => $kategori]);
  

я не знаю, как это решить, пожалуйста, помогите.. Заранее благодарю вас!

Комментарии:

1. Я не понял вопроса

2. я хочу показать данные о продуктах в режиме множественного выбора из базы данных. Эти данные будут отображаться в режиме множественного выбора в режиме редактирования. Но я не знаю, как решить эту проблему @sta