CakePHP调用未定义的函数App \ Model \ Table \ _ _()

时间:2018-03-07 22:34:00

标签: php cakephp

我最近继承了一些CakePHP代码,正在努力将其容纳到docker中。我不是那么流利的CakePHP。一切都成功了,除了错误的页面给我错误:

Call to undefined function App\Model\Table\_()

堆栈跟踪将我引导到一个蛋糕模板文件,该文件输出一个表单和一些输入。某些输入会引发错误。如果我添加' required' => false错误消除的选项。但我试图不编辑代码,因为它在开发服务器上完美运行。我也复制了app.php。

错误代码:

echo $this->Form->input('password', ['value'=>'']);

有效的代码:

echo $this->Form->input('password', ['value'=>'', 'required' => false]);

开发服务器: PHP - 7.0.22 CakePHP - 3.3.6

本地Docker容器: PHP - 7.1.5 CakePHP - 3.3.6

还有另一个错误以及主要错误表明:

Could this be caused by using Auto-Tables?

Please try correcting the issue for the following table aliases:

ArosAcos

这可能是我没有将dev数据库中的所有内容复制到本地数据库的问题吗?

堆栈追踪:

⟩ App\Model\Table\UsersTable->validationDefault
CORE/src/Validation/ValidatorAwareTrait.php, line 108

⟩ Cake\ORM\Table->validator
CORE/src/View/Form/EntityContext.php, line 463

⟩ Cake\View\Form\EntityContext->_getValidator
CORE/src/View/Form/EntityContext.php, line 406

⟩ Cake\View\Form\EntityContext->isRequired
CORE/src/View/Helper/FormHelper.php, line 2508

⟩ Cake\View\Helper\FormHelper->_initInputField
CORE/src/View/Helper/FormHelper.php, line 1610

⟩ Cake\View\Helper\FormHelper->file
APP/Template/Users/edit_profile.ctp, line 15

编辑个人资料代码:

<div class="displaysection">
        <?= $this->Form->create($user); ?>
        <?php
            echo $this->Form->input('old_password', ['type' => 'password', 'required' => true]);
            echo $this->Form->input('password', ['value'=>'']);
            echo $this->Form->input('password_confirm', ['type' => 'password', 'required' => true]);
        ?>
        <?= $this->Form->button('Change Password') ?>
        <?= $this->Form->end() ?>
      </div>

我在提交表单时也遇到此错误。我想这可能会出现在很多地方。

我将其追踪到CakePHP中的文件。

CORE/src/Validation/ValidatorAwareTrait.php, line 116

$validator = $this->{'validation' . ucfirst($name)}($validator);

显然这是导致错误的行。我不知道为什么这对开发和生产服务器起作用,而不是我本地的docker容器。

对此有任何帮助将不胜感激。谢谢!

0 个答案:

没有答案