无法在CodeIgniter 4中插入数据

问题描述 投票:0回答:2

我正在尝试 CodeIgniter 4,但插入数据时遇到问题。

在我的模型中,我只定义了表名称,没有方法,什么都没有。我可以显示表中的所有数据,但在插入数据时出现问题。

我的控制器代码如下所示:

$data = [
            'sum' => '23',
            'type' => 'in',
            'name' => 'asd'
        ];


        $expense = new ExpensesModel();

        try {
            var_dump($expense->insert($data));

        } catch (\ReflectionException $e) {
            var_dump($e);
        }

当我使用 Postman 调用此端点时,我得到一个

500 internal server error
。 如果我在
die('asd')
之前
try-catch
我可以看到该消息,所以这让我认为在
insert
方法调用期间发生了一些事情。

我该如何调试这个?

php codeigniter codeigniter-4
2个回答
2
投票

如果您在模型中定义的只是表名称,那么您从未定义过

$allowedFields
(https://codeigniter.com/user_guide/models/model.html):

该数组应使用可设置的字段名称进行更新 在保存、插入或更新方法期间。

您可能应该阅读该文档。此外,您可以通过查看项目的

writable/logs
目录中的日志来解决这些问题,尽管在这种情况下 CI 不会认为这是失败,因为您没有定义允许进入数据库的内容。


0
投票

我有相同的,但所有允许的字段都在模型中,但我仍然遇到相同的错误

© www.soinside.com 2019 - 2024. All rights reserved.