Mengumpulkan Input Tabular
Adakalanya kita ingin mengumpulkan input pengguna dalam mode batch. Yakni, pengguna dapat memasukan informasi untuk instance model secara multipel dan mengirimkannya sekaligus. Ini kita menyebutnya sebagai input tabular karena field input sering ditampilkan dalam tabel HTML.
Untuk bekerja dengan input tabular, pertama kita perlu membuat atau mempopulasikan
array instance model, tergantung pada apakah kita menyisipkan atau mengupdate
data. Selanjutnya kita dapat mengambil data input pengguna dari variabel $_POST
dan
menempatkannya ke setiap model. Perbedaan utama dari model input tunggal adalah
bahwa kita mengambil data input menggunakan $_POST['ModelClass'][$i]
alih-alih
$_POST['ModelClass']
.
Setelah action siap, kita perlu bekerja pada tampilan batchUpdate
untuk
menampilkan field input dalam sebuah tabel HTML.
Catatan dalam contoh di atas kita menggunakan "[$i]name"
alih-alih "name"
sebagai
parameter kedua saat memanggil CHtml::activeTextField.
Jika ada kesalahan validasi, field input terkait akan ditandai (highlight) secara otomatis, seperti halnya model input tunggal yang kami jelaskan sebelumnya.