微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 未定义的方法File :: save()(Laravel模型)

我正在使用Laravel构建一个新的Web项目.我正在使用Eloquent(它的ORM)来完成所有与数据库相关的东西.我有一个带有两个表的sqlite数据库:’images’和’files’.因此,我有两个模型:’ Image.PHP'(类 Image扩展Eloquent)和’File.PHP'(类File扩展Eloquent).

根据文档我做得对.我尝试使用Image模型并且工作完美.典型使用模型的示例:

$image = new Image;
$image->val1 = $val1;
$image->val2 = $val2;
$image->save();

但是由于某些原因我不知道,File模型没有按预期工作.我检查了一切:表名,类名,文件名,表……对我来说似乎没问题.我试着做的基本相同:

$file = new File;
$file->val1 = $val1;
$file->val2 = $val2;
$file->save();

在尝试运行时,我得到:

Call to undefined method Illuminate\Support\Facades\File::save()

如果我在保存之前执行var_dump(),似乎正在加载模型:

object(Illuminate\Support\Facades\File)#133 (4) {
    ["val1"]=> string(8) "abcdef" 
    ["val2"]=> string(10) "ghijkl" 
}

在这里错过了什么?

在这种情况下,文件是保留字,因为它是以下Facade的别名(在/app/config/app.PHP中定义)
'File' => 'Illuminate\Support\Facades\File',

将模型名称更改为其他名称,并且所有代码都可以正常工作.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。