Почему мой загруженный файл не сохраняется в базе данных?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Почему мой загруженный файл не сохраняется в базе данных?

Сообщение Anonymous »

Я пытаюсь создать форму сообщения, в которую пользователь может загрузить изображение, но изображение не сохраняется, а модель ресурса не создает новую запись. Я использую Livewire и файловую систему Laravel. Я прочитал в документации Laravel использование hashName(), поскольку это более безопасно. Я не понимаю, почему этот метод не сохраняет файл.





@if ($post_img)
Изображение
temporaryUrl() }}">
@endif

Post


Компонент Livewire
namespace App\Livewire\Pages;

// ...Other use namespace calls.
use Livewire\WithFileUploads;

class GroupPage extends Component
{
use WithFileUploads;

public $group_id = '';
public $content = '';
public $post_img;

public function store_post()
{
$validated = $this->validate([
'content' => 'required|string',
'post_img' => 'nullable|image|max:2048', // Add validation rule here
]);

$user_id = Auth::id();

$post = Post::create([
'content' => $validated['content'],
'group_id' => $this->group_id,
'user_id' => $user_id,
]);

if ($this->post_img) {
$filename = $this->post_img->hashName();

$path = $this->post_img->storeAs('uploads/posts');

Asset::create([
'path' => $path,
'type' => 'image',
'user_id' => $user_id,
'post_id' => $post->id(),
]);
}

$this->reset('content');
$this->post_img = null;

session()->flash('success', 'Post created!');
}

// ...
}


Подробнее здесь: https://stackoverflow.com/questions/786 ... e-database
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»