如何通过数据属性查询(不列出)子数据库

May*_*ayo 5 c# faunadb

有没有一种方法可以通过数据属性(即通过索引)查询子数据库?在多租户场景中,我们最终可能会有大量的子数据库,并且能够查询它们将非常好,例如(该版本的子数据库,正在关闭的子数据库等)

谢谢

ben*_*nji 5

像FaunaDB中的其他对象一样,可以使用任意用户数据(即)创建数据库CreateDatabase({name: "bob", data:{prop: "cool"}})。该用户数据也可以像其他任何内容一样被索引。一个shell会话示例:

myDb> Get(Index("by_prop"))
{ ref: Index("by_prop"),
  ts: 1560970634960000,
  active: true,
  partitions: 1,
  name: 'by_prop',
  source: Databases(),
  terms: [ { field: [ 'data', 'prop' ] } ] }
myDb> Get(Database("bob"))
{ ref: Database("bob"),
  ts: 1560970374730000,
  name: 'bob',
  data: { prop: 'cool' } }
myDb> Paginate(Match(Index("by_prop"), "cool"))
{ data: [ Database("bob") ] }
Run Code Online (Sandbox Code Playgroud)

使用具有超过项的索引data.prop,我可以匹配我感兴趣的数据库。项/值的选择是任意的,并且可以对您的应用程序有意义。