采集报错的解决方法
报错类型之Field 'vod_plot_name' doesn't have a default value
目前在操作正常的情况下,最常见的报错为SQLSTATE[HY000]: General error: 1364 Field 'vod_plot_name' doesn't have a default value
,vod_plot_name
为数据字段,可能会是其它,解决方法都一样。
错误解决
采集代码在EFV高级版转码
源码的controller/cms.js
的8604-8784
行之间,后续行数可能会有稍微变动。
如上述报错,缺失的字段为vod_plot_name
,我们搜索vod_play_server
,定位到填充字段块,修改如下:
#只列举部分代码,仅供参考,且修改前请备份好源文件
"vod_content": obj.summary || '',
"vod_play_server":"no",
"vod_plot_name": "",
"vod_play_url": cmsapi.cmsApiplayurl == 'on' ? (play_url + '$$$' + play_url_1) : play_url,
在我们搜索的vod_play_server
代码下方新增一个缺失字段就行就行,如"vod_plot_name": "",
注意后面不要缺少英文逗号,其它字段报错的新增方法也一样。
最后使用命令pm2 reload efvcms
重启程序生效。
报错类型之Data too long for column ‘vod_blurb’ at row 1
这种大概就是有标签数据超过了Mysql
数据库字段长度,如果你是宝塔安装的MYSQL
,可直接找到安装的Mysql
,点击右侧的设置,选择配置修改
将sql-mode
一行改成sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION;
,然后重启Mysql
后再次尝试。