gpt4 book ai didi

php - CakePHP 2.3 在生产环境中加载模型类,但在测试环境中不加载 "case sensitive cause"

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:35:40 27 4
gpt4 key购买 nike

我有一个使用 CakePHP 1.3 和 2.3 的环境,两者都使用相同的模型类。

我的可重用模型路径是:/var/www/libs/cakephp/models/*

在我的 config/bootstrap.php 文件中我设置了:

App::build(array(
'Model' => array('/var/www/libs/cakephp/models/'),
));

在生产环境中,一切正常,但在测试环境中,“models/*”文件夹中的类未加载。

两台服务器都是 LAMP。

经过大量的试验和错误后,我发现如果我在 testing 环境文件夹中将 models/中的文件从 myclassname.php 重命名为 Myclassname.php 一切正常!

所以问题出在名称文件中的大小写。

我知道 CakePHP 2.3 的约定,模型类应该是 CamelCase,但旧的 CakePHP 1.3 应用程序需要这些类。这里的问题是关于使用相同版本的框架、PHP 和 linux 时配置之间的差异。

我的问题可能是什么原因造成的?

在开发环境 (Windows) 中也一切正常。

最佳答案

按照 AD7six 的建议,我创建了指向我的模型的符号链接(symbolic link),允许 CakePHP 1.3 和 2.3 独立于大小写请求类文件。

cd /var/www/libs/cakephp/models/; ln -s myclassname.php MyClassname.php

关于php - CakePHP 2.3 在生产环境中加载模型类,但在测试环境中不加载 "case sensitive cause",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19567621/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com