Я не совсем понимаю, как использовать синтаксис haml для троичного оператора, чтобы проверить, установлен флажок или нет.У меня есть столбец color_id, в котором хранятся значения, на основе которых установлен флажок.Ниже приведен мой код:
.dress_color
.form-group
.checkbox.checkbox-primary.color_id
= f.check_box :color_id, {}
%label= t('.dark color')
- if f.object.long_dress_selected?
...............
- else
= f.check_box, checked: true ? ('color_id: black') : ('color_id: white')
Я хочу проверить, установлен флажок 'dark_color' или нет, в другой части условия if-else.То есть, если флажок установлен, color_id должен быть установлен как «черный», иначе он должен быть установлен как «белый».Но приведенный выше код показывает ошибку как:
SyntaxError -html.haml:19: syntax error, unexpected tLABEL, expecting '='
_false(( f.check_box, checked: true ? ('color_id
^:
Как проверить, установлен ли флажок или нет с помощью троичного оператора?
Заранее спасибо.
РЕДАКТИРОВАТЬ: я попробовал синтаксис
f.check_box (color_id :, {}, checked_value = "черный", unchecked_value = "белый")
но выдало ошибку как:
syntax error, unexpected ','
x(color_id:, {}, checked_value = "black", unch
^
file1.html.haml:40: syntax error, unexpected ')', expecting tSTRING_DEND
));}\n", 0, false);end;_hamlout.