laravel-admin 实现在指定的相册下添加照片

时间:2021-05-26

相册与照片是一对多的关系,有以下需求:

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 实现在指定的相册下添加照片就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章