我在网站模型上调用静态方法的问题:Website::all()
。有人可以看到一个错误,因为我做不到。
stacktrace
[2017-05-31 13:33:51] local.ERROR: SymfonyComponentDebugExceptionFatalThrowableError: Class 'AppModelWebsite' not found in /Users/macmini2/ws/app/Services/ServiceWebsite.php:36
Stack trace:
#0 /Users/macmini2/ws/app/Core/Webscraper.php(212): AppServicesServiceWebsite->findAll()
#1 /Users/macmini2/ws/app/Core/Webscraper.php(30): AppCoreWebscraper->processWebsite('http://localhos...', Array, Array, Array, Object(AppModelClientService), true)
#2 /Users/macmini2/ws/app/Main.php(32): AppCoreWebscraper->setup('http://localhos...', Array)
#3 /Users/macmini2/ws/app/Console/Commands/cmd.php(62): AppMain->__construct('http://localhos...', Array)
#4 [internal function]: AppConsoleCommandscmd->handle()
#5 /Users/macmini2/ws/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(29): call_user_func_array(Array, Array)
#6 /Users/macmini2/ws/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(87): IlluminateContainerBoundMethod::IlluminateContainer{closure}()
#7 /Users/macmini2/ws/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(31): IlluminateContainerBoundMethod::callBoundMethod(Object(IlluminateFoundationApplication), Array, Object(Closure))
#8 /Users/macmini2/ws/vendor/laravel/framework/src/Illuminate/Container/Container.php(531): IlluminateContainerBoundMethod::call(Object(IlluminateFoundationApplication), Array, Array, NULL)
#9 /Users/macmini2/ws/vendor/laravel/framework/src/Illuminate/Console/Command.php(182): IlluminateContainerContainer->call(Array)
#10 /Users/macmini2/ws/vendor/symfony/console/Command/Command.php(264): IlluminateConsoleCommand->execute(Object(SymfonyComponentConsoleInputArgvInput), Object(IlluminateConsoleOutputStyle))
#11 /Users/macmini2/ws/vendor/laravel/framework/src/Illuminate/Console/Command.php(167): SymfonyComponentConsoleCommandCommand->run(Object(SymfonyComponentConsoleInputArgvInput), Object(IlluminateConsoleOutputStyle))
#12 /Users/macmini2/ws/vendor/symfony/console/Application.php(835): IlluminateConsoleCommand->run(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#13 /Users/macmini2/ws/vendor/symfony/console/Application.php(200): SymfonyComponentConsoleApplication->doRunCommand(Object(AppConsoleCommandscmd), Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#14 /Users/macmini2/ws/vendor/symfony/console/Application.php(124): SymfonyComponentConsoleApplication->doRun(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#15 /Users/macmini2/ws/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(122): SymfonyComponentConsoleApplication->run(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#16 /Users/macmini2/ws/artisan(35): IlluminateFoundationConsoleKernel->handle(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#17 {main}
这是模型类
<?php
namespace AppModel;
use IlluminateDatabaseEloquentModel;
class Website extends Model
{
protected $table = "websites";
public function customer(){
return $this->hasOne('AppModelCustomer', 'foreign_key');
}
public function pages(){
return $this->hasMany('AppModelPage');
}
}
这是服务类
<?php
namespace AppServices;
use AppModelWebsite;
use AppServicesServiceInterface;
use AppTraitsHeaderTrait;
use AppTraitsPageTrait;
use CarbonCarbon;
class ServiceWebsite implements ServiceInterface{
use HeaderTrait, PageTrait;
//Find all websites
public function findAll(){
return Website::all();
}
}
}
希望您的模型文件被命名为weblot.php,您是否尝试过运行
composer dump-autoload
运行命令
composer dump-autoload
Composer dump-autoload 命令不会下载任何新内容。它只是重新生成了需要包含在项目中的所有类的列表。