Я пытался сделать загрузчик файлов в laravel. Но когда я хочу отправить его в базу данных, он имеет нулевое значение, когда я отправляю его в контроллер. Я не знаю, где мне нужно go чтобы решить эту проблему.
Мой взгляд:
<div class="container">
<form method="POST" action="/admin/add-album/add">
@csrf
<label>Album name</label>
<input type="text" name="album_name" class="form-control">
<br>
<input id="file-upload" type="file" name="album_picture" accept="image/*">
<br>
<input type="submit" name="submit" class="form-control">
</form>
</div>
Мой контроллер:
public function addAlbumDatabase(Request $request)
{
request()->validate([
'album_name' => ['required'],
]);
$slug = $this->slugify(request('album_name'));
$user = \Auth::user();
dd($request->file('album_picture'));
if ($files = $request->album_picture) {
$destinationPath = 'public/images/';
$profileImage = date('YmdHis') . "." . $files->getClientOriginalExtension();
$files->move($destinationPath, $profileImage);
} else {
dd("mislukt om de image up te loaden");
}
Albums::create([
'user_id' => $user->id,
'album_name' => request('album_name'),
'album_profile_picture' => $profileImage,
'album_slug'=> $slug
]);
return redirect('admin/add-album');
}
моя модель:
class Albums extends Model {
protected $fillable = [
'user_id', 'album_name', 'album_profile_picture', 'album_slug'
];
}