gpt4 book ai didi

go - 当方法实际上没有丢失时接口(interface)转换 panic

转载 作者:行者123 更新时间:2023-12-01 22:41:13 25 4
gpt4 key购买 nike

不知何故,在运行时,我得到以下 panic 消息,即使在我看来,该方法已正确定义为实现该接口(interface)的结构。

panic: interface conversion: schema.MerchantResultset 
is not search.ResultsetInterface: missing method Add

这是 接口(interface)蓝图
type ResultsetInterface interface {
Init(string)
CacheSet(context.Context) error
CacheSetPart(context.Context, int) error
CacheGet(context.Context, string) error
Add(interface{})
AddResultset(interface{})
}

以下是举报的方法 缺少 在运行时,分配给我的结构 MerchantResultset。
func (mr *MerchantResultset) Add(item interface{}) {
mr.Data = append(mr.Data, item.(Merchant))
}

我不知何故非常困惑,试图了解这里实际需要什么

最佳答案

可能是因为您正在传递 MerchantResultset ,但 Add方法仅为指向该类型的指针定义。

关于go - 当方法实际上没有丢失时接口(interface)转换 panic ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63845468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com