Skip to content

Latest commit

 

History

History
35 lines (27 loc) · 1.05 KB

associating-files.md

File metadata and controls

35 lines (27 loc) · 1.05 KB
title weight
Associating files
2

You can associate a file with a model like this:

$newsItem = NewsItem::find(1);
$newsItem
   ->addMedia($pathToFile)
   ->toMediaCollection();

The file will now be associated with the NewsItem instance and will be moved to the disk you've configured.

If you want copy, rather than move the original file call preservingOriginal:

$newsItem
   ->addMedia($pathToFile)
   ->preservingOriginal()
   ->toMediaCollection();

You can also add a remote file to the media library:

$url = 'http://medialibrary.spatie.be/assets/images/mountain.jpg';
$newsItem
   ->addMediaFromUrl($url)
   ->toMediaCollection();

The media library does not restrict what kinds of files may be uploaded or associated with models. If you are accepting file uploads from users, you should take steps to validate those uploads, to ensure you don't introduce security vulnerabilities into your project. Laravel has a a rule to validate uploads based on MIME type or file extension.