Я создаю открытку для Laravel Nova.
Я создал простой маршрут API, который будет вызывать конечную точку и возвращать ответ.
api.php
<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use Zttp\Zttp;
/*
|--------------------------------------------------------------------------
| Card API Routes
|--------------------------------------------------------------------------
|
| Here is where you may register API routes for your card. These routes
| are loaded by the ServiceProvider of your card. You're free to add
| as many additional routes to this file as your card may require.
|
*/
Route::get('/endpoint', function (Request $request) {
$response = Zttp::get('https://novapackages.com/api/recent');
return $response->json()['data'];
});
Но когда я попадаю на этот маршрут, я получаю ошибку:
Класс ‘Zttp \ Zttp’ не найден
Это то, что мой composer.json
похоже:
{
"name": "jachno/test-http-card",
"description": "A Laravel Nova card.",
"keywords": [
"laravel",
"nova"],
"license": "MIT",
"require": {
"php": ">=7.1.0",
"kitetail/zttp": "^0.3.0"},
"autoload": {
"psr-4": {
"Jachno\\TestHttpCard\\": "src/"}
},
"extra": {
"laravel": {
"providers": [
"Jachno\\TestHttpCard\\CardServiceProvider"]
}
},
"config": {
"sort-packages": true
},
"minimum-stability": "dev",
"prefer-stable": true
}
Это должно быть что-то очевидное, я основал то, что я делаю на этом репо
https://github.com/tightenco/nova-package-discovery
и это делает почти точно то, что я делаю. Я говорю почти так, как будто должна быть какая-то разница, но я не могу ее найти.
Я также разместил полное репо в том числе поставщик dir и т. д.
После просмотра вашего composer.lock
, Я уверен, что вы делаете composer update
на вашей упаковке.
Пробовать composer update
из вашего проекта Laravel, а не из вашего пакета.
Других решений пока нет …