小编meg*_*ron的帖子

我无法在 Laravel 中获取控制器

我在访问我通过终端创建的控制器时遇到问题:

php artisan make:controller Admin\TestController
Run Code Online (Sandbox Code Playgroud)

这是我创建的 TestController 类

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class TestController extends Controller
{
    public function teste()
    {
        return 'Teste Controller';
    }
}
Run Code Online (Sandbox Code Playgroud)

这是路由文件,我将在其中尝试调用该teste方法。默认情况下,正确的做法是调用 Admin 文件夹中的 TestController。

<?php

use Illuminate\Support\Facades\Route;

Route::get('/test', 'Admin\TestController@teste');
Run Code Online (Sandbox Code Playgroud)

当我更新页面时,在 Web.php 文件中,出现以下消息:

Illuminate\Contracts\Container\BindingResolutionException Target class
[Admin\TestController] does not exist.
Run Code Online (Sandbox Code Playgroud)

它仅在我放置完整目录时才有效:

<?php

use Illuminate\Support\Facades\Route;

Route::get('/test', 'App\Http\Controllers\Admin\TestController@teste');
Run Code Online (Sandbox Code Playgroud)

但由于代码更精简且易于理解,我不想放置完整的目录。

如何在不放置完整目录的情况下调用 TestController ?

我正在使用 Laravel 框架: 8.9.0

我正在使用 php: 7.2.19 (cli)

php laravel laravel-8

2
推荐指数
1
解决办法
562
查看次数

返回字典中记录最多的键

我需要在字典中检查哪个键的数据量最大:

我有以下字典布局:

dic = {
    'ls1': [
        'value1',
        'value2',
        'value3'
    ],
    'ls2': [
        'value4',
        'value5',
        'value6',
        'value7'
    ],
    'ls3': [
        'value8',
        'value9'
    ]
}
Run Code Online (Sandbox Code Playgroud)

我已经试过了:

item1 = dic['ls1']
item2 = dic['ls2']
item3 = dic['ls3']

if len(item1) > len(item2) and len(item1) > len(item3):
    print('ls1')
elif len(item2) > len(item1) and len(item2) > len(item3):
    print('ls2')
else:
    print('ls3')
Run Code Online (Sandbox Code Playgroud)

但这样做并不好。还有比这更好的吗?

python list

1
推荐指数
1
解决办法
33
查看次数

标签 统计

laravel ×1

laravel-8 ×1

list ×1

php ×1

python ×1