第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法將字符串解析為 datastore.Key

無法將字符串解析為 datastore.Key

Go
絕地無雙 2023-06-26 17:05:16
我試圖將數(shù)據(jù)存儲區(qū)密鑰從 Form 轉換為 int64 ,并在該密鑰的幫助下嘗試更新數(shù)據(jù)存儲區(qū)中的記錄。我嘗試了,但我收到一條錯誤消息:Unable to parse key. strconv.ParseInt: parsing "/Users,6248007768440574": invalid syntax我從表單傳遞的值是 format 的數(shù)據(jù)存儲鍵/Users,6248007768440574。我意識到語法錯誤就是因為這個。有人可以幫我解決這個問題嗎?或者,是否有一種方法可以將字符串轉換為 *datastore.Key?任何幫助將不勝感激
查看完整描述

1 回答

?
HUX布斯

TA貢獻1876條經(jīng)驗 獲得超6個贊

ParseInt 返回錯誤,因為字符串"/Users,6248007768440574"不是整數(shù)。子字符串是一個整數(shù),但不是整個字符串。

問題中的字符串是通過調用Key.String創(chuàng)建的。數(shù)據(jù)存儲包不提供解析此方法輸出的方法。這是一個針對沒有祖先鍵的情況的簡單解析器:

var keyPat = regexp.MustCompile(`^/([^\.]*),(\d+)$`)


func parseKey(s string) (*datastore.Key, error) {

? ? m := keyPat.FindStringSubmatch(s)

? ? i := strings.Index(s, ",")

? ? if i < 0 {

? ? ? ? return nil, errors.New("bad format")

? ? }

? ? n, err := strconv.ParseInt(m[2], 10, 64)

? ? if err != nil {

? ? ? ? return nil, err

? ? }

? ? return datastore.IDKey(m[1], n, nil), nil

}

Encode方法和Decode函數(shù)是將密鑰與機器可讀字符串相互轉換的首選方法。


查看完整回答
反對 回復 2023-06-26
  • 1 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號