下面是增删改查的接口,在使用过程中按自己需求对代码进行更改
控制器代码
<?php namespace App\Http\Controllers; use App\Models\Fang; use Illuminate\Http\Request; use Nette\Schema\ValidationException; class FangController extends Controller { //房源添加 public function create(Request $request){ try { $data=$request->all(); $res=Fang::create($data); return ['code'=>200,'data'=>$data,'msg'=>'添加成功']; }catch (\Exception $exception){ return ['data'=>$data,'msg'=>'服务器错误','code'=>203]; } } //房源搜索 public function select(Request $request){ try { //获取搜索关键字 $fang_name=$request->input('fang_name'); // 在 Post 模型中执行搜索 $data = Fang::where('fang_name', 'like', "%$fang_name%") ->orWhere('fang_name', 'like', "%$fang_name%") ->get(); if($data){ return ['data'=>$data,'msg'=>'搜索成功','code'=>200]; } }catch (ValidationException $exception){ return ['data'=>$fang_name,'msg'=>'服务器错误']; } } //房源删除 public function delete(){ try { $id=\request()->get('id'); $info=Fang::find($id); if ($info->is_recommend==1){ return ['data'=>203,'msg'=>"该房源已被推荐,不可删除"]; }else if (empty($info)){ return response()->json(['message'=>'该房源不存在'],404); } $info->delete(); return ['data'=>$info,'code'=>200,'msg'=>"删除成功"]; }catch (ValidationException $exception){ return ['data'=>$info,'msg'=>'服务器错误']; } } //房源修改 public function update(Request $request){ try { // $id=$request->all('id'); // 验证请求数据 $request->validate([ 'fang_name'=>'required|string' //其他需要更新的字段验证规则 ]); //根据传入的ID查找用户 $id=$request->post('id'); $data=Fang::find($id); //如果找不到用户,返回错误响应 if (!$data) { return response()->json(['message' => '该房源不存在'], 404); } //更新用户信息 $data->fang_name=$request->input('fang_name'); //更新其他字段 //保存用户更改 $data->save(); // 返回成功响应 return response()->json(['message' => '修改成功']); }catch (\Exception $exception){ return ['states'=>1000,'msg'=>'验证不通过']; } } }
路由api代码
include base_path('routes/xb/xb.php');
在routes目录下再创建一个目录和一个.php文件
<?php use Illuminate\Support\Facades\Route; Route::prefix('xb')->group(function (){ //房源添加 Route::post('fang_create',[\App\Http\Controllers\FangController::class,'create']); //房源删除 Route::any('fang_delete',[\App\Http\Controllers\FangController::class,'delete']); //房源修改 Route::any('fang_update',[\App\Http\Controllers\FangController::class,'update']); //房源搜索 Route::post('fang_select',[\App\Http\Controllers\FangController::class,'select']); });
使用过程中注意部分代码的更改
版权声明:除特别声明外,本站所有文章皆是本站原创,转载请以超链接形式注明出处!