我的功能來更新這樣的:如何爲更新添加laravel驗證只有一次?
public function updateRating(UpdateRatingRequest $request) {
$param = $request->only('id', 'rating');
$id = $param['id'];
$rating = $param['rating'];
$review = Review::find($id);
$review->rating = $rating;
$review->save();
}
我的驗證規則是這樣的:
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class UpdateRatingRequest extends FormRequest {
public function rules() {
return [
'id'=>'required',
'rating'=>'required'
];
}
}
我要添加驗證服務器端laravel。如果一個特定的ID列,評級列已更新,它不能再次更新。所以每個ID,其評級列只能更新一次
例如,我有id = 8。如果在ID = 8,評級列已更新。然後,id = 8的評級列不能再次更新。所以它只能更新一次
我該怎麼辦?
更新
這是我的檢查,有一個零評級,MongoDB的ID的方式:
$reviews = Review::where('_id',$param['id'])->whereNull('rating')->first();
的過程是一樣的laravel
該表中是否有其他列可以更新?如果是這樣,更新前評級列的價值是多少? –
我認爲你只需要添加一個列標誌評級。讓我們說稱爲rating_updated的列,並且此列具有類似布爾值(true/false)的內容。這是真的,那麼評級欄已經更新了。你可以很容易地檢查它。 – wlisrausr
@羅斯威爾遜,是的,它是updated_date列。更新前評級列的值爲空 –