کاربر میاد تو سایت ثبت نام میکنه که میخواد سفارش را انتخاب کنه فقط کاربر بتونه یک بار سفارش را انتخاب کنه.
دو بار اگر زد پیغام بده که شما قبلا این سفارش را به ثبت رساندی.
public function up()
{
Schema::create('orders', function (Blueprint $table) {
$table->bigIncrements('id');
$table->bigInteger('category_id')->unsigned();
$table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade');
$table->bigInteger('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->bigInteger('computer_id')->unsigned()->nullable();
$table->foreign('computer_id')->references('id')->on('computers')->onDelete('cascade');
$table->boolean('status')->nullable();
$table->timestamps();
});
}
User.php
public function checkOrder($category)
{
return !! Order::where('user_id' , $this->id)->where('category_id' , $category->id)->first();
}
OrderControllrt.php
public function store(Request $request)
{
$this->validate(request(), [
'category_id' => 'required'
]);
$order = Order::findOrFail(request('category_id'));
if(auth()->user()->checkOrder($order)) {
alert()->error('شما قبلا این سفارش را انجام داده اید.','دقت کنید')->persistent('خیلی خوب');
return redirect()->back();
}
من به روش زیر تغییر دادم اما هیچی نشد.
public function checkOrder($category)
{
return !! Category::where('user_id' , $this->id)->where('category_id' , $category->id)->first();
}
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟