Size: a a a

Saint P Ruby Community

2020 August 11

ZN

Zamira Norova in Saint P Ruby Community
vizvamitra
думаю это что-то вроде terms_accepted_at
Да. Хочется знать когда это было, но показывать только чекбокс
источник

ZN

Zamira Norova in Saint P Ruby Community
Tharin
Предлагаю не оперировать булевыми значениями, и оперировать nil value
Как?
источник

T

Tharin in Saint P Ruby Community
Если nil - значит false
источник

w

wi11son in Saint P Ruby Community
я бы тогда сделал attr_accessor, а поле сделал вычисляемым в зависимости от этого аттрибута
источник

T

Tharin in Saint P Ruby Community
Все логические операции и так знают, что nil is falsey
источник

T

Tharin in Saint P Ruby Community
И не парил бы себе мозг
источник

T

Tharin in Saint P Ruby Community
Мы, в принципе, в команде так и делали. Ни разу с этим проблем не было.
источник

ZN

Zamira Norova in Saint P Ruby Community
wi11son
я бы тогда сделал attr_accessor, а поле сделал вычисляемым в зависимости от этого аттрибута
Ну да, у меня там и стоит кастомные аксессоры
источник

w

wi11son in Saint P Ruby Community
вкрути тогда колбек before_save
источник

ZN

Zamira Norova in Saint P Ruby Community
Кажется решила. Завтра открою и буду смеяться может над решением, но пока работает 🙈

В модели
+  def bank_account_requested_at=value
+    super(![0, '0', nil].include?(value) ? Time.zone.now : nil)
+  end
+
+  def bank_account_requested_at
+    !!super
+  end


В форме
+  <%= f.input :bank_account_requested_at, as: :boolean, label: 'Bank account requested at', input_html: { checked: @customer.bank_account_requested_at } %>


И да, это все таки не пользовательское соглашение 🤦🏻‍♀️
источник

ZN

Zamira Norova in Saint P Ruby Community
А время писалось, потому что я сама модифицировала параметр там где его фильтрую 😬
источник

ZN

Zamira Norova in Saint P Ruby Community
Говорят в беларусии https закрыли
источник

ZN

Zamira Norova in Saint P Ruby Community
Правда?
источник

T

Tharin in Saint P Ruby Community
А что с формы прилетает?
источник

ZN

Zamira Norova in Saint P Ruby Community
Tharin
А что с формы прилетает?
'0' 😬
источник

v

vizvamitra in Saint P Ruby Community
у тебя написано "когда 0 / '0' / nil — проставлять время", т.е. когда чекбокс НЕ выбран.
источник

T

Tharin in Saint P Ruby Community
vizvamitra
у тебя написано "когда 0 / '0' / nil — проставлять время", т.е. когда чекбокс НЕ выбран.
Ты пропустил !
источник

v

vizvamitra in Saint P Ruby Community
а, нет, это у меня замылилось
источник

v

vizvamitra in Saint P Ruby Community
точно)
источник

T

Tharin in Saint P Ruby Community
Поэтому пользуйтесь ! реже
источник