在此项目中,用户可以彼此喜欢对方的照片,并且在某些时候(我还没有做过一份正式的工作),该项目应自动选择一个获胜者(这将是最受欢迎的照片)。
我在MySQL数据库中创建了一个表,该表存储喜欢该帖子的用户的post_id
和user_id
。在计划的命令中,我想获取在表中显示最多的post_id
。
我做了一个Laravel命令do:newwinner
,并在其句柄函数中,
我首先直接在数据库中测试了查询,它的工作原理使我获得了所有帖子的列表,其中优胜者位居榜首。然后,我尝试在命令中实现该查询。但是当我尝试运行它时,它给了我错误。
这是我的do:newwinner命令中的handle函数
public function handle()
{
echo "start job";
$outcome = DB::select('select post_id,COUNT(post_id) from post_user group by post_id desc');
echo " end job".$outcome;
}
此外,我使用的导入:
use Illuminate\Database;
我希望每次都能从数据库中提取获奖者,以便将其存储在数据库的获奖者表中。
运行时:
php artisan do:newwinner
这是我收到的错误消息:
?[41;1m Symfony\Component\Debug\Exception\FatalThrowableError ?[49;22m : ?[33mClass 'App\Console\Commands\DB' not found?[39m
at ?[32mD:\School\3de jaar\Development\web-development\CocaCola\app\Console\Commands\newWinner.php?[39m:?[32m44?[39m
40| */
41| public function handle()
42| {
43| echo "start job";
> 44| $outcome = DB::select('post_id,COUNT(post_id) from post_user group by post_id desc');
45| echo " end job".$outcome;
46| }
47| }
48|
?[33mException trace:?[39m
?[36m1 ?[39m?[33mApp\Console\Commands\newWinner::handle()?[39m
?[32mD:\School\3de jaar\Development\web-development\CocaCola\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php?[39m:?[32m32?[39m
?[36m2 ?[39m?[33mcall_user_func_array([])?[39m
?[32mD:\School\3de jaar\Development\web-development\CocaCola\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php?[39m:?[32m32?[39m
?[32mPlease use the argument ?[39m?[31m-v?[39m?[32m to see more details.?[39m