发现一个模块安装时数据库表头的问题【严重】

后台 - 系统 - 扩展中心 - 模块管理 - 门户 
安装时 数据库文件中的表头 如:dp_cms_advert 。
实际中,我们在安装程序的时候提示可以自定义表头,也就是 dp_ 改成自定义的比如 xx_。。
这样子一来像门户这里的模块就会报错。。。
这个问题在以后,开发者开发的模块中同样会遇到这个尴尬的问题。。
 
望官方给出一个好的解决方法。。
已邀请:

dolphinphp

赞同来自: zyuz

您好,经过测试,确实是CMS模块的bug,因为自带的“普通模型”忘记删除,它的表名已经固定为“dp_cms_document_article”,所以才导致无法发布文章,建议您将自带的普通模型删除,自己按需求新建一个。
 
给您带来不便了,感谢您的反馈!

dolphinphp

赞同来自:

您好,关于这个问题,我们在开发的时候已经考虑到的了,不会出现安装不了的情况。
 
您可以用我们的框架重新搭建一个测试站点,安装的时候将dp_前缀改成其他,然后进入后台,安装cms模块,再查看数据库,你会发现表前缀是自动替换的。
 
只要您开发的模块,是从“模块管理”中导出来的,一般都能正常安装到其他网站上。
 
关键在于模块的info.php需要配置表前缀参数(手册有说到),而这个表前缀,必须和该模块下的install.sql文件中的表前缀一致,这样,无论你将模块放到任何一个用我们框架搭建的网站,都是可以正常安装的。
 
关于模块安装,还可以再完善的地方,感谢您的反馈,请一如既往的支持我们哦。

pbdy - 二次开发业务QQ8510001

赞同来自:

但是。。经过测试。。在安装的时候,海豚PHP的默认表头如果改了。那么CMS安装是可以的,但是你发布不了文章,会提示 服务器发生错误 。。。这个是一个BUG吗?

pbdy - 二次开发业务QQ8510001

赞同来自:

好吧 。。需要 cms/info.php中的 'database_prefix' => 'dp_',这个字段改成你安装时用得才OK。。这里需要智能一下。。如果可以自动获取就好了,。。或者在安装的时候提示配置。。

xianzhi0520 - smell

赞同来自:

解答很详细啊

要回复问题请先登录注册