Ruby простая форма флажок не проверяет, когда True


Итак, у меня есть несколько флажков, сделанных с использованием простой формы рубинового камня. Но проблема в том, что они не появляются проверенными, даже когда я проверил и установил их "true" и нажал кнопку обновления. У меня есть три примера, все они не работают, и я попытался сделать другой код для всех трех.

  <%= f.input :same_as_client_email,
              inline_label: "Same as Client Email",
              as: :boolean %>

Первый пример

<%= f.input :same_as_client_name,
    inline_label: "Same as Client Name",
    as: :boolean,  checked_value: true,unchecked_value: false
    %>

Второй пример

<%= f.input :active,
    as: :boolean,
    checked_value: true, unchecked_value: false,
    input_html: { value: '1', checked: true },
    inline_label: "Active"%>

Последний пример.

Ни один из них не работает и не остается проверенным. У меня есть другие входы, и они есть сохранение при нажатии кнопки Обновить. Но флажков нет. Любая помощь будет оценена по достоинству.

1 2

1 ответ:

Это была проблема javascript на случай, если кто-то еще придет и увидит это. Будьте внимательны, используя jquery и simpleform вместе. Моя проблема заключалась в том, что у нас был код jquery, чтобы сделать наши кнопки более эстетически привлекательными.

//$(function checkbox() {
//  'use strict'
//
//  var originalElement = $('input[type="checkbox"]');
//  var overlay = '<div class="checkbox-overlay"><div class="inner"></div></div>';
//
//  function swapCheckbox() {
//    originalElement.replaceWith(overlay);
//  }
//
//  function toggleCheckbox() {
//    $(this).toggleClass('checked');
//
//  }
//
//  function initialize() {
//    swapCheckbox();
//    $('body .checkbox-overlay').on('click', toggleCheckbox);
//  }
//
//  initialize();
//});

Но на самом деле это делало его таким simpleform получал только 0, а не 1. другими словами, даже если вы установите флажок, он никогда не будет работать, потому что этот код Jquery манипулировал переменными, когда они были отправлены в simpleform. В в будущем я обновлю этот пост, если исправлю флажки, чтобы они выглядели "красиво", не путаясь с функциональностью. Эта проблема заняла много времени, учитывая, что я не знал об этом файле, пока разработчик SimpleForm не указал, что их файл может быть JS, который возится с моим кодом.

Edit: я надеюсь, что это лучше объясняет проблему!