请选择 进入手机版 | 继续访问电脑版

SpeedPHP框架

 找回密码
 注册成为新用户

QQ登录

只需一步,快速开始

查看: 183|回复: 3

新版已经不支持spLinker了,是否支持级联查询和更新?

[复制链接]
发表于 2020-5-26 14:29:51 | 显示全部楼层 |阅读模式
旧版本升级到新版本,发现新版已经不支持spLinker了。新版本是否支持级联查询和更新?或者是否尤其demo?


发表于 2020-5-27 10:11:36 | 显示全部楼层
 楼主| 发表于 2020-5-28 13:08:55 | 显示全部楼层
感谢,已经找到了。

看起来这次改版改动挺大的,花费一天升级成功。在部署过程中也遇到了一些问题,还好都解决了。

记录下,希望能够帮助到有需要的人。另外,版主是否可以提供一个升级注意事项的check list或者一个升级检查项。

基于我的场景,升级改动中遇到的问题,包括:
工程部分:
1. 原有的controller, model文件夹 移动到 protected中。 其他其他静态资源,移动到 i 文件夹下。

代码部分:
1. spUrl -> url,包括controller和view部分语法需要修改。
2. spLinker移除,需要是用query完成
3.$this->success和$this->error已经移除,需要自己实现。
4. findAll的condition不支持string,只支持array,且array中的只能进行“等于”的判断,对于其他,例如"<", "like"是不支持的。实现复杂的查询需要切换到query,或者更改speedphp.php的finall中的condition拼接,增加对string的支持。
5. 原有的php.index中的配置,需要移动到protected/config.php。
6. spArgs移除,替换为arg
7.model需要继承自Model, controller需要继承BaseController
8.分页的方式,从spPager($page_index, $this->config['page_size'])->findAll()修改为findAll的参数,获取分页信息需要从$model_config->spPager()->getPager()修改为$model_config->page;
9.BaseController中公共变量$layout指名使用的模板。
10. action的函数名需要加action前缀,例如之前版本的action的函数名是list,现在需要actionList()


部署部分:
1.静态路由从index.php?c=XXX&a=XXX修改为/controllerName/actionName, 需要检查Apache本身的配置是否开启“文件配置”的选项了。具体可以参照手册:https://github.com/SpeedPHP/manual/blob/master/%E8%AE%BF%E9%97%AE%E4%BA%A4%E4%BA%92-%E4%BC%AA%E9%9D%99%E6%80%81%E5%8F%8AURL%E8%B7%B3%E8%BD%AC.md
2.config.php的配置区分了 线上配合 和 调试配置,部署线上环境需要注意。



发表于 2020-5-28 14:13:54 | 显示全部楼层
benben 发表于 2020-5-28 13:08
感谢,已经找到了。

看起来这次改版改动挺大的,花费一天升级成功。在部署过程中也遇到了一些问题,还好都 ...

很厉害,这都能升级。因为原来的设计差的很远,所以本来是不推荐升级的。楼上能做到太厉害了。
您需要登录后才可以回帖 登录 | 注册成为新用户

本版积分规则

手机浏览|简版|中文PHP框架|开源协议|SpeedPHP.com ( 粤ICP备08008671号

GMT+8, 2020-7-5 01:57

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表