diff --git a/model/channel.go b/model/channel.go index 7326f28c6196..5a62e9dcbe6e 100644 --- a/model/channel.go +++ b/model/channel.go @@ -168,6 +168,11 @@ func (c ChannelInfo) Value() (driver.Value, error) { // Scan implements sql.Scanner interface func (c *ChannelInfo) Scan(value interface{}) error { + // SQLite drivers return TEXT columns as strings. + if stringValue, ok := value.(string); ok { + return common.UnmarshalJsonStr(stringValue, c) + } + bytesValue, _ := value.([]byte) return common.Unmarshal(bytesValue, c) }