我有一份包含一些翻译的文档。我想从一个查询中获取两种语言,而不必运行两次。 两个的原因是英语是默认的,如果其他选定的语言没有翻译,则将使用英语。
所以我的结构如下,我不知道如何过滤,以便我只获得选定的语言,例如“en”和“es”。从数组中排除所有“de”值。
texts:{
id1:{
"en":"welcome",
"es":"bienvenido",
"de":"Willkommen "
},
id2{
"en":"good bye",
"es":"adios",
"de":"tschüss"
}
}
例如,如果我想要英语和西班牙语的“欢迎”文本,查询会是什么样子。我将传递“id1”作为单词,“en”和“es”作为键。 这就是我被困的地方,我只是不知道如何进行过滤。
FOR doc IN translations
FILTER doc.texts.id1.... == "en" AND "es" .....
RETURN doc
如果这很重要的话,我正在从 PHP 运行 AQL 查询。
感谢您的帮助,谢谢!
尝试一下:
FOR doc IN translations
FILTER (doc.texts.id1.en != NULL) AND (doc.texts.id1.es != NULL)
RETURN doc