Bagaimana Anda bisa memiliki bidang tersembunyi dengan bentuk sederhana?
Kode berikut:
= simple_form_for @movie do |f|
= f.hidden :title, "some value"
= f.button :submit
mengakibatkan kesalahan ini:
undefined method `hidden' for #SimpleForm::FormBuilder:0x000001042b7cd0
ruby-on-rails
ruby-on-rails-3
form-for
hidden-field
simple-form
Linus Oleander
sumber
sumber
= f.input :title, :as => :hidden, :input_html => { :value => "some value" }
simple_form
cara untuk melakukan input tersembunyi, namun, jika hanya input tersembunyi yang diperlukan, maka cukup gunakanhidden_field
pembuat pembangun Rails karena Formulir Sederhana mewarisi semua metode pembangun formulir.Namun terpendek !!!
Lebih pendek, KERING dan mungkin lebih jelas.
Tentu saja dengan ruby 1.9 dan format hash baru kita bisa lebih pendek 3 karakter dengan ...
sumber
Juga merupakan opsi. Namun, perhatikan bahwa ia melewatkan pembungkus apa pun yang ditentukan untuk pembuat formulir Anda.
sumber
Cara yang benar (jika Anda tidak mencoba mereset nilai input hidden_field) adalah:
Di mana
:method
metode yang ketika dipanggil pada objek menghasilkan nilai yang Anda inginkanJadi ikuti contoh di atas:
Kode yang digunakan dalam contoh ini akan mengatur ulang nilai (: judul) dari @movie yang diteruskan oleh formulir. Jika Anda perlu mengakses nilai (: judul) film, alih-alih mengatur ulangnya, lakukan ini:
Sekali lagi hanya menggunakan jawaban saya adalah Anda tidak ingin mengatur ulang nilai yang dikirimkan oleh pengguna.
Saya harap ini masuk akal.
sumber
simple_form_for
,hidden
metode yang digunakan di sini akan memunculkan kesalahan yangundefined method
disembunyikan 'untuk # <SimpleForm :: FormBuilder: 0x00007ffa6cde0be8> `