Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menyegerakkan Array dengan Pelbagai Medan Pangsi dalam Laravel?

Bagaimana untuk Menyegerakkan Array dengan Pelbagai Medan Pangsi dalam Laravel?

Susan Sarandon
Lepaskan: 2024-10-19 17:53:29
asal
969 orang telah melayarinya

How to Sync an Array with Multiple Pivot Fields in Laravel?

Menyegerakkan Tatasusunan dengan Medan Pangsi Tambahan dalam Laravel

Dalam Laravel, kaedah penyegerakan() membolehkan anda mengurus many-to- banyak hubungan antara model. Walaupun dokumentasi menyediakan contoh untuk menyegerakkan satu baris pangsi, ia tidak secara eksplisit menangani cara mengaitkan data pangsi tersuai dengan berbilang baris yang disegerakkan.

Penyelesaian terletak pada menentukan tatasusunan data pangsi untuk setiap model berkaitan yang anda mahu menyegerakkan. Dengan menyediakan pasangan nilai kunci yang kuncinya ialah ID model yang berkaitan dan nilainya ialah tatasusunan nilai medan pangsi, anda boleh mengaitkan data pangsi tambahan dengan setiap baris yang disegerakkan.

Sebagai contoh, pertimbangkan model Pengguna yang mempunyai hubungan banyak-ke-banyak dengan Role model. Jadual pangsi untuk perhubungan ini mempunyai medan tamat tempoh. Jika anda ingin menyegerakkan tiga peranan dengan pengguna, setiap satu dengan nilai tamat tempoh yang berbeza, anda boleh berbuat demikian seperti berikut:

<code class="php">$user->roles()->sync([
    1 => ['expires' => true],
    2 => ['expires' => false],
    3 => ['expires' => null],
]);</code>
Salin selepas log masuk

Ini akan menyegerakkan pengguna dengan tiga ID peranan dan mengaitkan nilai tamat tempoh yang ditentukan dengan setiap baris dalam jadual pangsi.

Atas ialah kandungan terperinci Bagaimana untuk Menyegerakkan Array dengan Pelbagai Medan Pangsi dalam Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan