initialize/config.go
package initialize
type DatabaseConfig struct {
MysqlConfig MysqlConfig `yaml:"mysql"`
RedisConfig RedisConfig `yaml:"redis"`
}
type MysqlConfig struct {
Host string `yaml:"host"`
}
type RedisConfig struct {
Host string `yaml:"host"`
Port int `yaml:"port"`
Password string `yaml:"password"`
Database string `yaml:"database"`
}initialize/cache.go
package initialize
import (
"main/global"
"github.com/chenyahui/gin-cache/persist"
"github.com/go-redis/redis/v8"
)
func InitCache(r *DatabaseConfig.RedisConfig) {
// redisStore := persist.NewRedisStore(redis.NewClient(&redis.Options{
// Network: "tcp",
// Addr: "127.0.0.1:6379",
// }))
// global.Cache = redisStore
}InitCache文件中的cache.go方法接受参数Redis配置,但此位置被报告为错误。错误消息如下:DatabaseConfig.RedisConfig undefined (type DatabaseConfig has no method RedisConfig)compilerMissingFieldOrMethod
发布于 2022-05-08 07:31:38
只需通过DatabaseConfig
func InitCache(c *DatabaseConfig) {
c.RedisConfig
}或
直接通过场
func InitCache(c *RedisConfig) {
//
}
// and in somewhere
var cfg DatabaseConfig
InitCache(&cfg.RedisConfig)https://stackoverflow.com/questions/72135581
复制相似问题