我正在使用我创建的包装器在我的驱动器帐户中检索与给定查询匹配的文件
files = get_files_by_query session, "title = 'Competitors' and trashed = false"
这将返回一个 Google::APIClient::Schema::Drive::V2::File 对象数组
从 rails 控制台,我可以检索数组中第一个文件的父文件。
files.first.parents.first.id
但是,当我尝试检索 isRoot
files.first.parents.first.isRoot
我收到以下错误
TypeError: Expected boolean, got NilClass.
这很奇怪,因为当我检查父项的内容时,会显示哈希值,并且 isRoot 显然是假的或真的,但绝不是零。
不确定这是否相关,但在错误之后。如果我重新尝试第一个命令
files = get_files_by_query session, "title = 'Competitors' and trashed = false"
结果以 Hash 对象数组的形式返回,而不是 Google::APIClient::Schema::Drive::V2::File 对象。
下面是上面使用的包装器。
def get_files_by_query session, query
get_files session, {'q' => query}
end
def get_files session, parameters
drive = session.discovered_api("drive", "v2")
result = session.execute(api_method: drive.files.list, parameters: parameters)
if result.status == 200
files = result.data.items
else
puts "An error occurred: #{result.data['error']['message']}"
end
end
谢谢!