EasyNVR平台具备分级管理的功能,同时还具备一个最高权限的管理员,该管理员下可以设置其他等级的管理员及普通用户。有用户反应如果使用非管理员登录EasyNVR,将昵称设置成中文,再进入录像回看之后,列表就会显示为空。
对该情况我们进行了测试,发现确实如此,需要对这个地方进行修改:


查看代码调试后发现是因为sql语句错误引起的,sql语句中用昵称字段(username)进行了sql查询,而使用的值则是name字段对应的值,只要两者不相同就会查找不到数据。


将昵称字段换为登录字段后数据就出现了:
wheresql := fmt.Sprintf(`%s.name='%s'`, models.User{}.TableName(), uname)
