iT邦幫忙

第 11 屆 iThome 鐵人賽

1
Software Development

在後花園遇見LP,Laravel及PHP的甜蜜糾纏,火熱上映系列 第 47

✾後花園D47✾ Flower 留言版 CRUD Part 4( 會員留言板 修改文章內容 Controller )

  • 分享至 

  • xImage
  •  

本系列文的環境狀態,可點擊此連結後花園環境參考

更新第 1 次,日期:2019/11/09

如果這次做的留言版有想跟着一起做的看倌,因爲有用到之前的設定,建議回顧下列這篇連結的內容:
✾後花園D23✾-種花囉! Part 3( 會員系統 CRUD 之 Route 及 Middleware 設定 )

目前查詢要修改的文章,若爲自己寫的就可以改,若不是則會修改失敗

Controller

路徑:app/Http/Controllers/StoneController.php

<?php

namespace App\Http\Controllers;

use App\Flower;
use App\Stone;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Validator;

class StoneController extends Controller
{
     public function update(Request $request, $id)
    {
        $stone = Stone::find($id);     
        // 查詢 stones 內的 id

        $flower_id=Auth::user()->id;   
        // 提取當前使用者的 id

        $auth_flower=Stone::where('flower_id',$flower_id)->value('flower_id');   
        // 查詢對應的欄位資料,只提取值的資料

        if ($flower_id == $auth_flower ) {

            $update = $stone->update($request->only(['title','content']));

            return response(['message' => '留言內容已更新', 'data' => $update]);

        } else {
            return response(['message' => '留言更新失敗']);
        }

}

Route

路徑:routes/api.php

<?php

Route::group(['middleware' => ['auth:flower']], function(){
    Route::put('/stone/update/{id}', 'StoneController@update');
});

參考連結:
❁ Laravel 客製化使用者驗證功能-增加使用者資料欄位
❁ Laravel - Database: Query Builder
❁ Ken 大 - 貼文 ( Controller : update & destroy )


上一篇
✾後花園D46✾ Flower 留言版 CRUD Part 3( 會員留言板 顯示所有文章及個人文章 Controller )
下一篇
✾後花園D48✾ Flower 留言版 CRUD Part 5( 會員留言板 刪除文章 Controller )
系列文
在後花園遇見LP,Laravel及PHP的甜蜜糾纏,火熱上映49
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言