//////////////////////资源路由

//商品资源路由恢复
Route::get('/restore/{id}','goodController@restore');

//商品资源路由添加,删除 ,展示
Route::resource('good','goodController');

/////////////////////////////////////////////资源路由控制器页面

<?php

namespace App\Http\Controllers;

use App\models\goodModel;
use App\models\goodModels;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Validator;

class goodController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index(Request $request)
{
//展示页面
//..搜索,接受搜索关键字
$word= $request->input('word');
//分页接口
//1.总条数
$count = DB::table('good_test')->count();
//2.设置首页当前页
$first_page = $request->input('page', 1);
//3.每页显示的条数
$num = 3;

//4.一共有几页,也可以求出最后一页
$last_page = ceil($count / $num);
//5.计算偏移量
$offset = ($first_page - 1) * $num;
$data = DB::table('good_test')
// ->where('good_name','like',"%$word%")这是分页的接口测试
->where('good_name','like',"%$word%")
->offset($offset)
->limit($num)
->get();
// var_dump($data);
if ($data) {
//返回接口三要素
$arr['staus']='200';
$arr['info']='分页(模糊查询)完成';
$arr['data']=$data;
//返回json对象
return response()->json($arr);
}

}

/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//添加页面
}

/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//接受表单页面
$params = $request->all();
// var_dump($params);
//进行验证
$validata = Validator::make($params, [
'good_name' => 'required',
'good_price' => 'required',
'good_img' => 'required',

], [
'good_name.required' => '商品名称不可以为空',
'good_price.required' => '商品价格不可以为空',
'good_img.required' => '商品封面不可以为空',

]);
if ($validata->fails()) {
$errors = $validata->errors()->first();
//接口三要素
// echo $errors;
$arr['status'] = 500;
$arr['info'] = $errors;
$arr['data'] = $params;
//返回json对象
return response()->json($arr);
}
//进行图片的处理
$path = url('') . '/' . $request->good_img->store('good_imgs');
$params['good_img'] = $path;
//进行模型调用,添加入库
$res = goodModels::store($params);
if ($res) {
//返回接口三要素
$arr['status'] = 200;
$arr['info'] = '添加成功';
$arr['data'] = $params;
//返回方式为json对象
return response()->json($arr);

} else {
$arr['status'] = 404;
$arr['info'] = '添加失败';
$arr['data'] = $params;
//返回方式为json对象
return response()->json($arr);

}

}



/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//展示修改页面
}

/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//编辑修改
}

/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//修改页面
}

/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
$res=goodModels::del($id);
if ($res){
//返回三要素
$arr['status']=200;
$arr['info']='删除成功';
$arr['data']=$res;
//返回json对象
return response()->json($arr);
}else{
$arr['status']=500;
$arr['info']='删除失败';
$arr['data']=$res;
//返回json对象
return response()->json($arr);
}

}



//删除恢复
public function restore($id){
//调用恢复的模型
$res=goodModels::restore($id);
var_dump($res);
if ($res){
$arr['status']=200;
$arr['info']='恢复成功';
$arr['data']=$res;
//返回json对象
return response()->json($arr);

}else{
$arr['status']=500;
$arr['info']='恢复失败';
$arr['data']=$res;
//返回json对象
return response()->json($arr);

}

}
}


、、、、、、、、、、、、商品模型页面
<?php

namespace App\models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class goodModels extends Model
{
//
use SoftDeletes;
protected $table='good_test';
public $primaryKey='id';
public $timestamps=false;
public static function store($params){
$obj=new self();
$obj->good_name=$params['good_name'];
$obj->good_price=$params['good_price'];
$obj->good_img=$params['good_img'];
return $obj->save();
}

//删除
public static function del($id){
return self::find($id)->delete();
}
//删除恢复
public static function restore($id){
return self::withTrashed()
->find($id)
->restore();

}

}





最新文章

  1. C# .net dotnet属性定义属性,以提供显示明称,默认值
  2. 【转】web集群时session同步的3种方法
  3. Windows性能计数器
  4. git 与 github 最简单的用法
  5. IRP派遣操作
  6. Kendo UI开发教程(26): 单页面应用(四) Layout
  7. JavaScript高程--&lt;script&gt;标签
  8. C++ 空间配置器(allocator)
  9. Linux文件与目录的默认权限与隐藏权限 - umask, chattr, lsattr, SUID, SGID, SBIT, file
  10. 我与C++的初识
  11. POJ_1321
  12. 根据PDF模板生成PDF文件(基于iTextSharp)
  13. Vim 基本配置
  14. c#中的数据类型简介(委托)
  15. ns3的输入输出奥秘(三) Tracing系统
  16. require.js 简洁入门
  17. java常见包
  18. Python不生成HTMLTestRunner报告-转载学习
  19. 洛谷P2345 奶牛集会
  20. Tomcat6连接数设置:permsize

热门文章

  1. 聊一聊如何用C#轻松完成一个TCC分布式事务
  2. X000100
  3. Java Thread.currentThread()和This的区别
  4. MySQL--事件/定时器
  5. Java-基于JDK的动态代理
  6. iOS中处理时间的类
  7. Docker使用Dockerfile构建新的镜像
  8. VMware中Ubuntu18配置静态IP地址
  9. P3400【仓鼠窝 】
  10. Solution -「Gym 102979E」Expected Distance