Ruby on rails rails yaml fixture-指定空值
我有一个具有如下值的装置:Ruby on rails rails yaml fixture-指定空值,ruby-on-rails,postgresql,null,yaml,fixtures,Ruby On Rails,Postgresql,Null,Yaml,Fixtures,我有一个具有如下值的装置: product_four: id: 4 application_id: 1 title: "oldtitle" deleted_at: ~ 设置用于测试的postgresql数据库。 但我不知道如何将deleted_at字段设置为NULL而不是[empty]。 我试过: deleted_at: :null deleted_at: <%= nil %> deleted_at: ~ deleted_at: NULL
product_four:
id: 4
application_id: 1
title: "oldtitle"
deleted_at: ~
设置用于测试的postgresql数据库。
但我不知道如何将deleted_at字段设置为NULL而不是[empty]。
我试过:
deleted_at: :null
deleted_at: <%= nil %>
deleted_at: ~
deleted_at: NULL
deleted_at::null
删除地址:
删除地址:~
已删除位置:NULL
也许还有几次,运气不好。
无头绪的线索?只需忽略值:
product_four:
id: 4
application_id: 1
title: "oldtitle"
deleted_at:
例如:
> {:k => ''}.to_yaml
=> "--- \n:k: \"\"\n"
> {:k => nil}.to_yaml
=> "--- \n:k: \n"
> YAML.load({:k => nil}.to_yaml)
=> {:k=>nil}
> YAML.load("--- \n:k: null\n")
=> {:k=>nil}
请注意,k:
表示k
有一个nil
值,而k:
表示k
有一个空字符串作为其值
如果所有解析器都知道最新的YAML规范,则还可以使用显式语法:
product_four:
id: 4
application_id: 1
title: "oldtitle"
deleted_at: null
例如:
> {:k => ''}.to_yaml
=> "--- \n:k: \"\"\n"
> {:k => nil}.to_yaml
=> "--- \n:k: \n"
> YAML.load({:k => nil}.to_yaml)
=> {:k=>nil}
> YAML.load("--- \n:k: null\n")
=> {:k=>nil}
事实上,这些方法似乎大部分都有效。psql只是不显示NULL作为值,它只是不打印任何内容。无论如何,谢谢你。让它空着也行。