我对rails很新,这似乎是一个非常简单的问题,但我不明白。 所以我想从我的数据库中提取一个.txt文件。我想将“true”和“false”的布尔数据导出为“0”和“1”。这是我的代码:
if File.exist?("nanny_Input.inc")
File.delete("nanny_Input.inc")
end
f=File.new("nanny_Input.inc", "w")
printf(f, "parameter FV(i) / \n")
@nannies = Nanny.all
@nannies.each { |nann|
printf(f, nann.name + "\s" + nann.fuehrerschein.to_s + "\n") }
printf(f, "/;\n\n")
而nann.fuehrerschein ist boolean所以我只想要输出“0”和“1”。很抱歉这么简单的问题但如果有人帮助我会很好:)谢谢!!!
答案 0 :(得分:0)
只检查boolean
值是true
还是false
。在这种情况下,您可以使用三元运算符
printf(f, "#{nann.name} #{nann.fuehrerschein ? 1 : 0}\n") }
这是如何运作的 -
nann.fuehrerschein == true
1
0
此外,您可以稍微更改一下代码
File.open('nanny_Input.inc', 'w') do |file|
file.puts"parameter FV(i) /"
@nannies = Nanny.all
@nannies.each do |nanny|
file.puts "#{nanny.name} #{nanny.fuehrerschein ? 1 : 0}"
end
end