من منویی به نام اخبار دارم که کاربر خبر ایجاد میکنه و هم بروز رسانی که تا اینجا مشکلی ندارم.
اما در جدول اخبار من فیلدی به نام approved دارم که بصورت پیشفرض 0 هست وقتی خبر ایجاد میشه در لیست تایید نشده ها میاد حالا کاربر باید تایید کنه در این تایید فقط فیلد approved باید آپدیت بشه و به 1 تغییر کنه تا در لیست تایید شده بیاد.
آیا باید دو متد آپدیت بزارم؟
در قسمت routes و کنترلر باید جیکار کنم. ممنون میشم با کد بهم بگید.
شما باید یک روت ایجاد کنید و بعد تو کنترلرتون یه متد
public function approved(Comment $comment)
{
$comment->approved = 1;
$comment->save();
return back();
}
همینو برای اخبارتون پیاده کنید
اینم روت:
Route::post('/{comment}/approved', 'CommentController@approved')->name('admin.comment.approved');
@manvfx
سلام ببخشید من منظورتون رو درست متوجه نشدم چیه میشه لطفا دقیق تر سناریو رو توضیح بدین
من در قسمت ادمین سایت کاربر نویسنده میتونه خبر ایجاد کنم و ویرایش کنم که بدرستی هم کار میکنه
اما در جدول خبر یک فیلد با نام approved که بصورت پیشفرض 0 هست و ادمین کل سایت تا اینکه خبر را تایید نکنه و فیلد approved در دیتابیس مقدارش 1 نشه. کاربران نمیتونند خبر را ببینند.
من یک متد آپدیت که بخودی خود دارم که خبر ایجاد شده را کاربری نویسنده ویرایش میکنه.
اما یک متد آپدیت هم میخام بزارم برای ادمین که در لیست اخبار تایید نشده بتونه با زدن دکمه تایید بتونه خبر را آپدیت کنه یعنی فیلد approved در دیتابیس آپدست بشه. باید در view و کنترلر چه کار کنم؟
با سلام این فرآیند شما تقریبا شبیه سیستم نظردهی و کامنت سایت ها هست !
شما برای بخش ادمین یک بخشی برای تایید مطلب می گزارید.
برای نمایش هم :
return $this->hasMany(Test::class , 'parent_id' , 'id')->where('approved' , 1)->latest();
شما باید یک روت ایجاد کنید و بعد تو کنترلرتون یه متد
public function approved(Comment $comment)
{
$comment->approved = 1;
$comment->save();
return back();
}
همینو برای اخبارتون پیاده کنید
اینم روت:
Route::post('/{comment}/approved', 'CommentController@approved')->name('admin.comment.approved');
من اینجا ارور دارم:
ErrorException (E_ERROR)
Route [posts.approved] not defined. (View: E:MyProjectmainhafars esourcesiewsadminpostsapproved.blade.php)
روت:
$this->post('posts/approved', 'PostController@approved')->name('posts.approved');
<form style="margin-right: 5px" action="{{ route('posts.approved') }}" method="post">
{{ method_field('patch') }}
{{ csrf_field() }}
<button type="submit" class="btn btn-xs btn-success">تایید</button>
</form>
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟