我知道如何检查传入数据集的字段是否为字符串,但是如何进行条件检查该字段是否存在,然后检查其是否为字符串:
例如,“姓氏”不是必填字段,但如果提供了该字段,则检查其长度是否大于2。如果仅检查长度规则,则会收到错误消息->有没有办法仅在存在last_name的情况下检查长度?
Firestore规则: request.resource.data.last_name.length()> 0
答案 0 :(得分:1)
检查值是否为字符串实际上与检查是否存在相同。因此,如果您这样做:
request.resource.data.last_name is string
如果不存在,还将返回false。
但是,如果您不关心类型是什么,而只想检查它是否存在(作为字符串,数字或其他类型):
"last_name" in request.resource.data
request.resource.data是Map,因此请在那些链接中查看其文档。
答案 1 :(得分:0)
用于验证该字段的功能如下:
function isLastNameValid() {
return request.resource.data.last_name == null || request.resource.data.last_name.size() > 2;
}