Tampaknya tidak ada cara untuk memeriksa nilai kotak centang on / off tunggal (boolean) dalam pemilih data untuk modul Aturan. Jika "field-MyField" = dicentang atau "field-MyField" = 1, maka lakukan 'bla'. Bisakah Aturan melakukan ini? Saya pasti melewatkan sesuatu
8
Jawaban:
Ada campuran rincian yang benar dan salah di sini, jadi saya akan mencoba memilahnya. Ini untuk Aturan pada Drupal 7, dan berlaku untuk bekerja dengan bidang Boolean.
Untuk membuat kondisi yang memeriksa keadaan Boolean bidang (benar / salah, ya / tidak, dicentang / tidak dicentang), pertama-tama pastikan bahwa Anda dapat mengakses bidang di pemilih data. Seperti yang disebutkan Bojan di atas, dan seperti yang disebutkan di halaman admin itu sendiri,
Operator yang ingin Anda pilih adalah "sama dengan".
Untuk bidang "Nilai Data", Anda dapat memasukkan nilai dalam dua mode, pastikan Anda menggunakan "mode input langsung". Anda kemudian dapat memeriksa kotak centang yang mewakili BENAR untuk bidang itu.
Diterjemahkan, apa yang Anda katakan adalah, "Apakah bidang ini sama dengan BENAR?" Anda juga dapat meniadakannya dengan membiarkannya tidak dicentang atau menggunakan opsi "negasi" di bawah ini.
sumber
Anda cukup menambahkan kondisi "Perbandingan data", tentukan nama bidang, dan masukkan "1" sebagai nilainya. Jika bidang tidak muncul di daftar bidang, pertama-tama tambahkan kondisi "Entity memiliki bidang", dan pilih bidang di sana. Kemudian tambahkan "Perbandingan data" selanjutnya.
sumber
Setelah beberapa jam coba-coba, saya akhirnya memecahkan masalah. Jangan meminta saya untuk menjelaskan ini karena tidak masuk akal bagi saya. Jika ada yang bisa menjelaskan, maka itu akan sangat dihargai!
Saya menetapkan kondisi baru menggunakan DATA COMPARISON. Saya kemudian pilih "node: field-MyField: 0" (sebenarnya ada hingga 4 di antaranya - node: field-MyField: 1, node: field-MyField: 2, dll.). Saya kemudian mengatur PERBANDINGAN ke EQUALS. Kemudian pada bagian pemilih data ke-2, itu tidak lagi merupakan pemilih data kotak input teks, tetapi sekarang muncul sebagai pemilih kotak centang data. Ketika saya mengklik pemilih data kotak centang itu, dan tekan save, sekarang modul aturan berfungsi dengan benar.
kepala poni di dinding
sumber
Di versi Aturan yang diperbarui (tetap?), Untuk melakukan ini, tambahkan kondisi Perbandingan Data, pilih bidang yang sesuai di pemilih data
node:field-to-check
, lalu pada langkah selanjutnya biarkan operator perbandinganequals
. Di grup Nilai data, akan ada kotak centang yang dinamai Aturan "Nilai Data" akan dibandingkan dengan nilai kotak centang seperti yang dikirimkan pada halaman ini.sumber
Kemungkinan besar Anda harus menggunakan Dukungan Formulir Aturan .
Setelah Anda mengaktifkan aturan formulir untuk formulir tertentu, Anda bisa menggunakan kondisi seperti: Elemen formulir memiliki nilai . Kondisi ini dapat digunakan baik ketika formulir sedang dibangun atau divalidasi .
Modul lain yang perlu dipertimbangkan adalah Aturan Entitas .
sumber