Skip to main content

对于所有开发者,如何高效率地筛选是非常重要的。ftrack API已经准备了多种灵活的备选方案,让大家可以根据不同的关联来查找自己所需。现在,我们已经将它升级了。

在我们学习新技能之前,我们来稍微复习一下怎么用API来做筛选吧。

选取标量(scalar)属性是最基础的,比如我们可以查找在特定日期曾发表过的备注:

Note where date is “2018-05-25”

或者我们可以组合一下条件:

Note where date > “2018-05-01”  and date < “2018-06-01”

ftrack当然也支持根据关联筛选,这里我们可以根据标量关系进行查找。比如,我们可以查找某人曾发表过的所有备注:

Note where author.username is “john.doe”

当然,不同句法也是可以选出同样的内容,比如用“has”来筛选:

Note where author has (username is “john.doe”)

超简单的,对吧。现在我们来试试用集合关系进行查找:

Note where replies.author.username is “john.doe”

细心的读者大概已经注意到我们结合着筛选了一个集合(replies)和一个标量(author),那么假如我们不知道作者的全名(John.doe),但是我们知道他的名字和姓氏(却不知道中间名),那么我们该如何筛选呢?

Note where replies any (author.first_name is “John” and author.last_name is “Doe”)

这时候我们就可以使用“any”来作为筛选的关键字,它可以让我们筛选集合中所有同时满足条件的情形(first_name and last_name)。

让我们来提前感受一下新上的子查询吧

我们升级的ftrack可以使用子查询了。代码句法和之前的筛选非常相似,不过它可以把之前的筛选作为条件:

<Entity> where <Attribute> in (<Query>)

比如,我们可以用新语法重写上面那个查找备注和回复的例子:

Note where id in (select in_reply_to_id from Note where author.username is “john.doe”)

我们能得到同样的结果,但是使用的确是不同的语句。此外,子查询也很适用于基于非常规情形查找,比如根据父一级的某个属性来查找备注。

举个例子,把所有任务状态为“正在进行”的相关备注找出来。

Note where parent_id in (select id from Task where status.name is “In progress”)

以上是我们新特性简略介绍,对于更多更详细的关于API和筛选的信息,我们可以详细阅读以下网站:

全新Webhooks UI、外部URL、吸管工具等新功能上线!

| 产品 | No Comments
一大波ftrack Studio的最新功能来袭

又更新了!与Houdini、Premiere Pro、Harmony无缝集成!

| 产品 | No Comments
Studio现在与SideFX Houdini和Adobe Premiere Pro以及Toon Boom Harmony的预发布版本实现了全新的集成!

又更新功能啦!强化项目面板+简化数据导出!

| 产品 | No Comments
项目面板定制的灵活性增加,还简化了数据导出流程!

Connect 3.0来咯!全新集成体验!

| 产品 | No Comments
全新的Connect框架带来了一系列增强功能,旨在满足大家不断变化的流程需求。

ftrack的开发者中心全新发布!

| 产品 | No Comments
全新的ftrack开发者中心,请试用!

cineSync 3.3新功能!深入iconik集成、激光工具、OTIOZ支持等

| 产品 | No Comments
cineSync 3.3带来了引入了颜色配置文件,通过激光指针等新工具带来新的可能性!

审阅新功能来啦!支持手写笔和平板电脑!

| 产品 | No Comments
ftrack Studio和ftrack Review的审阅更新啦!

全新创建项目界面来袭!定制化项目管理,释放你的创造力!

| 产品 | No Comments
新的创建项目界面来啦!