現在、ファイルをアップロードするAPIがあり、その名前は具体的には「Lesson IMG」です。つまり、別のファイルタイプをアップロードしようとすると、pdfファイルタイプも受け入れるため、画像ファイルタイプのみをアップロードします。
レッスン作成コントローラー:
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$rules=[
'title'=>'required|unique:lesson',
'module_id'=>'required',
'content'=>'required',
'created_by'=>'required',
];
$validator = Validator::make($request->all(), $rules);
if($validator->fails()){
return response()->json($validator->errors(),400);
}
$data = $request->validate([
'title'=>'required',
'module_id'=>'required',
'content'=>'required',
'created_by'=>'required',
]);
$lessons = Lesson::create($data);
$uploaded_files = $request->file->store('public/uploads/');
$lessons->lesson_pdf = $request->file->hashName();
$results = $lessons->save();
return response(['message'=>"Lesson successfully created", $lessons],200);
}
特定の画像タイプが必要な場合は、次のようなMIMEタイプのルールを使用します。
$rules = ['file' => 'required|mimes:jpeg,png,jpg,gif,svg'];
詳細については、このリンクを参照してください、https://laravel.com/docs/8.x/validation#basic-usage-of-mime-rule
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加