无法在CodeIgniter 4中插入数据



我正在试用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。如果我在try-catch之前die('asd'),我可以看到消息,所以这让我认为在insert方法调用期间发生了一些事情。

如何调试?

如果您在模型中定义的只是表名,那么您从未定义$allowedFields(https://codeigniter.com/user_guide/models/model.html):

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

您可能应该通读该文档。此外,您可以通过查看项目的writable/logs目录中的日志来解决这些问题,尽管在这种情况下,CI不会认为这是一个失败,因为您没有定义允许进入DB的内容。

相关内容

  • 没有找到相关文章

最新更新