ruby - 我想用 ruby 语言对 GoogleSpreadsheet 工作表进行排序
问题描述
我想用 ruby 语言对 GoogleSpreadsheet 工作表进行排序。并且 GoogleAPI 响应是“成功”。但不是对工作表进行排序。你知道这是什么原因吗?
使用宝石。
gem 'google-api-client'
gem 'google_drive', '~> 3.0'
google_session=GoogleDrive::Session.from_config("config.json")
spreadsheet=google_session.spreadsheet_by_url("spreadsheet URL")
spreadsheet.batch_update(
[
{update_sheet_properties:
{fields:"index",
properties:[
{
sheet_id: xxxxx,#etc . spreadsheet.worksheets.first.sheet_id,
index: 2 #
}
]
}
}])
是回应。
Sending HTTP post https://sheets.googleapis.com/v4/spreadsheets/XXXXX[SheetId]XXXXX:batchUpdate?
200
#<HTTP::Message:0x00007fe073016228 @http_header=#<HTTP::Message::Headers:0x00007fe073016200 @http_version="1.1", @body_size=0, @chunked=false, @request_method="POST", @request_uri=#<Addressable::URI:0x47e14 URI:https://sheets.googleapis.com/v4/spreadsheets/XXXXX[SheetId]XXXXX:batchUpdate?>, @request_query=nil, @request_absolute_uri=nil, @status_code=200, @reason_phrase="OK", @body_type=nil, @body_charset=nil, @body_date=nil, @body_encoding=#<Encoding:UTF-8>, @is_request=false, @header_item=[["Content-Type", "application/json; charset=UTF-8"], ["Vary", "Origin"], ["Vary", "X-Origin"], ["Vary", "Referer"], ["Content-Encoding", "gzip"], ["Date", "Tue, 11 Aug 2020 10:24:01 GMT"], ["Server", "ESF"], ["Cache-Control", "private"], ["X-XSS-Protection", "0"], ["X-Frame-Options", "SAMEORIGIN"], ["Alt-Svc", "h3-29=\":443\"; ma=2592000,h3-27=\":443\"; ma=2592000,h3-T050=\":443\"; ma=2592000,h3-Q050=\":443\"; ma=2592000,h3-Q046=\":443\"; ma=2592000,h3-Q043=\":443\"; ma=2592000,quic=\":443\"; ma=2592000; v=\"46,43\""], ["Transfer-Encoding", "chunked"]], @dumped=false>, @peer_cert=#<OpenSSL::X509::Certificate: subject=#<OpenSSL::X509::Name CN=upload.video.google.com,O=Google LLC,L=Mountain View,ST=California,C=US>, issuer=#<OpenSSL::X509::Name CN=GTS CA 1O1,O=Google Trust Services,C=US>, serial=#<OpenSSL::BN:0x00007fe06f7f5290>, not_before=2020-07-15 08:33:25 UTC, not_after=2020-10-07 08:33:25 UTC>, @http_body=#<HTTP::Message::Body:0x00007fe073016188 @body="{\n \"spreadsheetId\": \"XXXXX[SheetId]XXXXX\",\n \"replies\": [\n {}\n ]\n}\n", @size=0, @positions=nil, @chunk_size=nil>, @previous=nil>
Success - #<Google::Apis::SheetsV4::BatchUpdateSpreadsheetResponse:0x00007fe072196fe0
@replies=[#<Google::Apis::SheetsV4::Response:0x00007fe072195c30>],
@spreadsheet_id="XXXXX[SheetId]XXXXX">
但是GSS没有更新......
解决方案
我的参数说明是错误的。
properties: []
=>properties: {}
spreadsheet.batch_update(
[
{update_sheet_properties:
{fields:"index",
properties:
{
sheet_id: xxxxx,#etc . spreadsheet.worksheets.first.sheet_id,
index: 2 #
}
}
}])
推荐阅读
- android - 在 ImageCapture.Builder 上设置目标分辨率在某些华为设备上不起作用
- php - 从 php 作为组织更新 Microsoft Azure 帐户密码
- html - html 表格不会在作为 dojox/layout/contentpane 左侧区域的 div 内居中对齐
- ios - Swift - 观察静态成员的变化,而不使用属性观察器
- zalenium - 在 AWS 云环境中部署 zalenium
- mongodb - 将函数应用于 Spark DataFrame 结构内的列,替换该列
- javascript - soda-js Group By 返回“无效的 SoQL 查询”
- html - HTML中的超链接电子邮件正文
- javascript - 如何通过单击按钮从 JS 中的多个类中访问某个类
- git - husky pre-push 以代码 0 退出,但推送从未发生