相册与照片是一对多的关系,有以下需求:
1、点开一条相册数据看到相册的照片列表
2、为相册添加照片时,表单中要看到相册的基本信息
以下是实现步骤:
第一步:构建带参数路由:
$router->resource('manage/{albumid}/photo',Manage\PhotoController::class);
第二步:处理操作对应的函数:
(1)列表查看
public function index($albumid)
{
return Admin::content(function (Content $content)use($albumid) {
$content->header('header');
$content->description('description');
$content->body($this->grid($albumid));
});
}
protected function grid($albumid)
{
return Admin::grid(Photos::class, function (Grid $grid)use($albumid) {
$grid->model()->where('album_id',$albumid);
......
}
}
(2)创建照片,并在创建表单上显示所属相册的基本属性
protected function form()
{
return Admin::form(Photos::class, function (Form $form){
$paramters = request()->route()->parameters();
$artworkid = isset($paramters['albumid'])?$paramters['albumid']:request()->input('albumid');
$album= ArtImage::find($albumid);
......
}
}
(3)更新照片
//重写update,多接收一个参数
public function update($album,$id)
{
return $this->form()->update($id);
}
(4)删除照片
//重写destroy,多接收一个参数
public function destroy($albumid,$id)
{
if ($this->form()->destroy($id)) {
return response()->json([
'status' => true,
'message' => trans('delete_succeeded'),
]);
} else {
return response()->json([
'status' => false,
'message' => trans('delete_failed'),
]);
}
}
以上这篇laravel-admin 实现在指定的相册下添加照片就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:- laravel框架 laravel-admin上传图片到oss的方法
- laravel实现上传图片,并且制作缩略图,按照日期存放的代码
- Laravel-添加后台模板AdminLte的实现方法