Я использую Tenancy for Laravel (v3.8.2) и Filament (v3.1.47) для создания мультиарендного приложения. У меня есть приличное количество приложений, которые хорошо работают, используя разные домены для разных приложений. Тем не менее, я начал пытаться заставить пользователей загружать файлы, но у меня возникли некоторые проблемы.
Когда я загружаю файл от имени пользователя, я получаю следующую ошибку: Невозможно получить file_size для файла по местоположению: livewire-tmp/40LsuTIsnBtUsTOvGIrcpexFpm0Y2T-metaYWZsb2dvLnBuZw==-.png..
Я вижу, что Филамент загрузил файл в это место Storage/app/public/livewire-tmp/40LsuTIsnBtUsTOvGIrcpexFpm0Y2T-metaYWZsb2dvLnBuZw==-.png, но я не думаю, что файл должен идти туда, я считаю, что он должен идти tenant1/app/..., и, я думаю, поэтому он не может проверить файл размер.
Надеюсь, это очевидное решение для тех, кто уже делал что-то подобное, хотя мы с коллегой пытались это выяснить и явно что-то упускаем. Буду признателен за любые предложения.
Ниже приведены соответствующие фрагменты кода, по моему мнению, но дайте мне знать, если есть другие, которые, по мнению людей, помогут выявить проблему.
app/Filament/App/Resources/TenantProjectResource.php
return $form
->schema([
Forms\Components\TextInput::make('name')
->required(),
Forms\Components\FileUpload::make('image')
->image()
->label('Project Default Image')
->disk('public')
->columns(1)
->directory('projects')
->moveFiles()
->maxSize(2048)
->columnSpanFull(),
]);
config/tenancy.php
'bootstrappers' => [
//Stancl\Tenancy\Bootstrappers\DatabaseTenancyBootstrapper::class,
Stancl\Tenancy\Bootstrappers\CacheTenancyBootstrapper::class,
Stancl\Tenancy\Bootstrappers\FilesystemTenancyBootstrapper::class,
Stancl\Tenancy\Bootstrappers\QueueTenancyBootstrapper::class,
// Stancl\Tenancy\Bootstrappers\RedisTenancyBootstrapper::class, // Note: phpredis is needed
],
config/filesystems.php
'public' => [
'driver' => 'local',
'root' => storage_path('app/public'),
'url' => env('APP_URL').'/storage',
'visibility' => 'public',
'throw' => false,
],
Подробнее здесь: https://stackoverflow.com/questions/783 ... t-location