EasyNVR安防视频可视化平台登录页的宣传广告位已经使用了一段时间,也经历过由静态库改为动态库的转变,前几天当我们准备进入EasyNVR演示平台时,发现EasyNVR默认开启宣传位,但没有默认宣传图,登录页图片位置显示空白,如下图:
我们知道在EasyNVR第一次启动的时候,需要初始化数据库,将数据库的最新内容更新至EasyNVR内,通过检查log日志,我们发现此处宣传图不显示是因为数据库没有初始化宣传位数据导致的。
因此解决这个问题我们可以添加宣传位的初始化查询。参考代码如下:
// 查询宣传位 advertCount := 0 database.Find(&models.Advert{}).Count(&advertCount) initImagesList() if advertCount == 0 { SetAdvertImages() }
type images struct { Name string Title string linkUrl string } var imagesList []images func initImagesList() { imagesList = append(imagesList, images{ Name: "宣传位1.png", Title: "宣传位1", linkUrl: "", }) imagesList = append(imagesList, images{ Name: "宣传位2.png", Title: "宣传位2", linkUrl: "", }) imagesList = append(imagesList, images{ Name: "宣传位3.png", Title: "宣传位3", linkUrl: "https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w5003-22778469176.2.54537759wU9xJj&id=617601877922&scene=taobao_shop", }) imagesList = append(imagesList, images{ Name: "宣传位4.png", Title: "宣传位4", linkUrl: "https://item.taobao.com/item.htm?spm=a1z10.3-c-s.w4002-22724820535.22.627b202esSxD4B&id=617310404435&scene=taobao_shop", }) imagesList = append(imagesList, images{ Name: "宣传位5.png", Title: "宣传位5", linkUrl: "https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w5003-22778469176.5.54537759U6EEdn&id=617817148594&scene=taobao_shop", }) imagesList = append(imagesList, images{ Name: "宣传位6.png", Title: "宣传位6", linkUrl: "https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w5003-22778469176.6.54537759fB5FjU&id=618447846532&scene=taobao_shop", }) } func SetAdvertImages() { for i := range imagesList { database.Create(&models.Advert{ Name: imagesList[i].Name, Title: imagesList[i].Title, AdvertUrl: fmt.Sprintf("/advert/%s", imagesList[i].Name), LinkUrl: imagesList[i].linkUrl, Enable: true, Sort: i + 1, }) } }
添加代码后,EasyNVR系统里的宣传图已经更新上去了,可以自由添加或者删减宣传图。
数据库初始化后,登录页宣传位显示如下:
之前也为大家介绍过很多EasyNVR平台的相关内容,比如视频广场快照不更新如何排查、视频不在线如何排查等,EasyNVR已经支持H265编码视频播放,如果大家有兴趣或有需求,欢迎联系我们。