在Ruby on Rails中自动生成表条目

时间:2017-03-13 17:00:29

标签: mysql ruby-on-rails

我有一张名为" Customers"的桌子。该表格可见here。 "描述"是#string;" fruit"是整数。 "水果"填写表格时不会向用户显示。相反,我希望ruby自动分配值" 0"去#"水果"列如果对应答案为"描述"是"是"。因此,如果用户选择是,则表将在水果列中自动生成0,如果用户选择否,则应在列中自动生成1 ...任何想法?提前谢谢!!

2 个答案:

答案 0 :(得分:1)

您的问题有点模糊 - 请提供更多详情。

用户如何输入是/否?

是否通过提交表单进行更新或创建? 如果是这样,你可以在动作

中写出类似的东西
if params[:answer]
  instance.update_attribute(fruit, true)
end

如果您要在展示页面中尝试完成此操作(请点击复选框说明)

你可以用jQuery实现这一点 即

$('.checkbox_selector/.select_box_selector').on('change', function() {
  // ajax the boolean 
});

我需要更多信息来回答一个不那么通用的答案 无论如何希望这有帮助

我还建议将水果设置为布尔值而不是整数。

答案 1 :(得分:1)

在用户模型中添加before_save过滤器

user.rb

class User < ActiveRecord::Base
  before_save :assign_fruit

  private
  def assign_fruit
    self.fruits = (self.description == "yes" ? 1 : 0 )
  end
end