tp5里面跨模块调用模型,公共函数、配置文件不能加载生效,这个问题怎么解决?

不同模块下有着不同的函数方法、数据库配置,在模型中有用到,但是在其他模块发起跨模块调用的时候,就会提示找不到表,找不到方法函数,这个问题这么解决。当然有比较笨的方法是:调用前在前面require引入函数文件,config('','')初始化配置值,这样虽然可以实现,但是太麻烦,不适合模块的灵活调用
已邀请:

dolphinphp

赞同来自: yunhe

一般在模块内定义的函数,只能在该模块使用,如果要夸模块使用函数,则将该函数写在
application\function.php
至于跨模块使用不同的数据库配置不起作用的问题,可能要去TP官方咨询一下。目前可以将数据库连接配置写在模块中
 
//在模型里单独设置数据库连接信息
namespace app\index\model;

use think\Model;

class User extends Model
{
protected $connection = [
// 数据库类型
'type' => 'mysql',
// 数据库连接DSN配置
'dsn' => '',
// 服务器地址
'hostname' => '127.0.0.1',
// 数据库名
'database' => 'thinkphp',
// 数据库用户名
'username' => 'root',
// 数据库密码
'password' => '',
// 数据库连接端口
'hostport' => '',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => 'think_',
];
}

要回复问题请先登录注册