Saya mencoba membuat modul backend, di mana pada halaman edit saya menggunakan admin-2column-left
tata letak.
Saya ingin memiliki formulir di setiap tab, tetapi saya tidak mengerti bagaimana saya bisa melakukan ini.
Idealnya, saya ingin tahu cara menetapkan formulir yang berbeda uiComponents
untuk tab yang berbeda, atau bagaimana saya bisa menentukan satu uiComponent
untuk formulir saya, tetapi dapat menetapkan kumpulan bidang mana yang berjalan pada tab mana.
Situasi spesifik saya, yang memancing pertanyaan ini, adalah saya ingin memiliki formulir standar pada satu tab (input teks berganda), dan pada tab lain, saya ingin memiliki dynamicRows
komponen UI. Kami telah menyebut tab ini Item Utama dan Baris.
Saat ini, saya menerapkan ini sebagai berikut: Utama didefinisikan dalam
_prepareForm
metode di dalam bloknya, yang merupakan ekstensi kelasForm\Generic
. Formulir ini muncul dan berfungsi dengan baik sampai saya menambahkan baris dinamis.
File tata letak saya memiliki kode untuk menambahkan tab Utama dan menetapkan blok konten. Selain itu memiliki wadah bernama line_items
, yang berisi uiComponent
untuk formulir yang berisi baris dinamis.
Tab Item Baris dibuat dalam _beforeToHtml
metode Widget\Tab
, dan kontennya ditetapkan dengan menggunakan panggilan ke getChildHtml
pada wadah line_items.
Tab berfungsi dan diisi dengan struktur yang benar, memungkinkan saya untuk menambah dan menghapus baris.
Masalahnya adalah ketika saya mengirimkan halaman, hanya input di tab Item Baris yang dikirimkan.
Jadi saya tahu saya belum mengatur ini dengan benar, dan perlu beberapa cara untuk menginstruksikannya untuk melacak dan mengirimkan semua elemen formulir. Sebagian besar implementasi ini berasal dari upaya saya untuk merekayasa balik pengaturan bentuk Atribut Produk Kategori, yang mirip dengan apa yang ingin saya lakukan.
Adakah yang tahu tentang itu?
Jawaban:
Gunakan kode berikut untuk membuat tab dengan formulir tunggal menggunakan UI-Component
Buat elemen formulir
Kode ini akan menampilkan 2 tab pada formulir dengan bidang formulir terkait.
Semoga solusi ini berhasil untuk Anda
sumber