[英]Laravel and using namespaces - Class not found
我已经在Laravel提供的Models文件夹下创建了一个php文件。
里面我有:
// Filename: Models/Shoopy.php
namespace Whatever\Something;
class Shoopy
{
public function Toot(){};
}
现在在另一个模型文件中,我正在使用该名称空间:
use \Whatever\Something\Shoopy;
class AnotherModel
{
public function Spop()
{
$harr = new Shoopy();
}
}
它带有Laravel错误:
class Whatever\Something\Shoopy not found
有任何想法吗?
我知道这是一个较旧的问题,但是如果您进入composer.json文件,则可能会看到类似...
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/"
}
},
你可以做的是告诉作曲家那里不管是应该的,说如果它是从那里Laravel通常保持它的文件不同的位置(或子文件夹)。
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/",
"Whatever\\": "app/Whatever",
}
},
类需要存在于目录路径与其名称空间相匹配的文件中。 这是根据PSR-0标准 。 在您的示例中,尝试将Shoopy
类放置在文件中:
app/models/Whatever/Something/Shoopy.php
然后查看自动装带器是否可以找到它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.