Làm cách nào để chuyển hướng trở lại với các lỗi trong laravel?

Khi thực hiện xác thực trong Laravel, bạn có thể cần chuyển hướng người dùng quay lại trang trước để hiển thị phản hồi lỗi. Để làm điều đó, bạn sẽ phải trả về phương thức "back[]" và đính kèm các đầu vào và lỗi bằng cách sử dụng "withInput[]" và "withErrors[]" từ bộ điều khiển chịu trách nhiệm xác thực

Ví dụ mã đầy đủ
Ví dụ mã bên dưới phải được đặt trong phương thức điều khiển của bạn.

withInput[]
            ->withErrors[[
                'email' => 'Your email must be from either one of these providers ' . collect[$providers]->join[', ', ' or ']
            ]];
    }
}

Cách in laravel với thông báo Lỗi trên tệp phiến. Cách gửi tin nhắn tùy chỉnh với phương thức Error[]. Laravel chuyển hướng trở lại với lỗi không hoạt động. Cách gửi thông báo lỗi với chuyển hướng trở lại trong laravel 7, laravel 8, laravel 9


Laravel gửi thông báo lỗi bằng phương thức chuyển hướng

Laravel cung cấp phương thức withError[] để gửi lỗi tới file blade. Hàm withError nhận một thông báo hoặc mảng thông báo lỗi, xem ví dụ bên dưới

Bộ điều khiển người dùng. php
class UserController extends Controller{
  public function login[Request $request]{
    $validator = Validator::make[$request->all[], [
      'email'     => 'required',
      'password'  => 'required',
    ]];

    if[$validator->fails[]]
      return back[]->withErrors[$validator];
    try {
      if[auth[]->attempt[['email' => $request->email, 'password' => $request->password]]]
        return "login success";
      else
        return back[]->withErrors['These credentials do not match our records.'];
    } catch [\Exception $e] {
      return back[]->withErrors[["custom_name" => "Either something went wrong or invalid access!"]];
    }
  }
}

đọc thêm. Laravel truy vấn whereDate, whereMonth và whereYear

Cách in thông báo laravel withError[]

Trong file laravel blade, chúng ta in ra các loại thông báo lỗi khác nhau. Trong ví dụ trường hợp đầu tiên, chúng tôi in lỗi bằng cách chạy vòng lặp foreach, nó sẽ in tất cả lỗi do hàm withError trả về và trong trường hợp thứ hai, in lỗi theo tên khóa của nó

Trong bài viết này, chúng ta sẽ tìm hiểu về cách chúng ta có thể chuyển hướng trở lại với các thông báo lỗi cũng như các thông báo cũ để trên trang làm mới, trường nhập của chúng tôi sẽ được tự động điền

chúng tôi hầu như sử dụng xác thực mặc định của laravel một phương thức để xác thực vì nó sẽ tự động chuyển hướng trở lại trang biểu mẫu trước đó của bạn. Nhưng đôi khi bạn cần đặt kiểm tra xác thực tùy chỉnh hoặc nếu có điều kiện thì bạn cũng có thể chuyển hướng ngược lại[] với thông báo lỗi giống như thông báo lỗi mặc định hoạt động

Trong ví dụ dưới đây, tôi đã cố gắng chỉ cho bạn ví dụ đơn giản nhất, với thông báo lỗi tùy chỉnh

Hãy xem cách chúng ta có thể làm mà không cần sử dụng mà không cần nhập liệu

Bạn cũng có thể đọc. Tin nhắn nhấp nháy trong laravel 8

return Redirect::back[]->withErrors[['email.required' => 'Your Message']];

Ví dụ hiển thị lỗi với đầu vào

return Redirect::back[]
    ->withInput[]
    ->withErrors[['email.required', 'Your Message']];

Trong blade, tệp thêm mã bên dưới để xem thông báo lỗi

@if[$errors->any[]]
   

{{$errors->first[]}}

@endif

Tôi hy vọng bây giờ bạn đã hiểu cách ghi đè thông báo lỗi bằng cách sử dụng chuyển hướng quay lại trong laravel

Khi bạn cần chuyển hướng đến một trang nhưng bạn muốn hiển thị thông báo, bạn có thể sử dụng withError trong mã điều khiển

return Redirect::back[]->withErrors[['msg', 'The Message']];

Sau đó gọi thông báo lỗi trong chế độ xem của bạn

@if[$errors->any[]]

{{$errors->first[]}}

@endif

Để kiểm tra xem có tin nhắn hay không, hãy sử dụng Phiên. has['tin nhắn']

Session::has['msg']

Bạn có thể sử dụng đèn flash thay thế

________số 8

Đôi khi, chúng ta cần chuyển hướng trở lại trang biểu mẫu với các giá trị đầu vào và thông báo lỗi trong ứng dụng laravel 5. Vì vậy, nếu bạn có cùng yêu cầu quay lại với thông báo lỗi xác thực hoặc chuyển hướng quay lại với giá trị đầu vào thì bài đăng này sẽ giúp bạn. bạn cũng có thể sử dụng ví dụ này với phiên bản laravel 6, laravel 7, laravel 8 và laravel 9

chúng tôi hầu như sử dụng phương thức xác thực mặc định của laravel để xác thực vì nó sẽ tự động chuyển hướng trở lại với trang biểu mẫu trước đó của bạn. Nhưng đôi khi bạn cần đặt kiểm tra xác thực tùy chỉnh hoặc nếu có điều kiện thì bạn cũng có thể chuyển hướng ngược lại[] với thông báo lỗi giống như thông báo lỗi mặc định hoạt động

Trong bài đăng này, tôi sẽ cung cấp cho bạn một ví dụ rất đơn giản để chỉ cho bạn cách bạn có thể chuyển hướng trở lại với thông số đầu vào và thông báo lỗi

Làm cách nào để chuyển hướng trở lại với thông báo lỗi trong laravel?

Khi bạn cần chuyển hướng đến một trang nhưng bạn muốn hiển thị thông báo, bạn có thể sử dụng withError trong mã điều khiển. trả lại chuyển hướng. back[]->withErrors[['msg', 'The Message']]; Sau đó gọi thông báo lỗi trong chế độ xem của bạn.

Làm cách nào để chuyển hướng trở lại trong laravel?

Nếu bạn chỉ muốn chuyển hướng người dùng quay lại trang trước [ví dụ phổ biến nhất - là chuyển hướng quay lại trang biểu mẫu sau khi xác thực dữ liệu không thành công], bạn có thể sử dụng cách này. return redirect[]->back[];

Làm cách nào để chuyển hướng trở lại hành động của bộ điều khiển trong laravel?

Làm cách nào để chuyển hướng trở lại hành động của bộ điều khiển trong laravel? .
Tuyến đường. bài đăng ['/người dùng/hồ sơ', chức năng [] {
// Cập nhật hồ sơ người dùng
chuyển hướng trả lại ['/ bảng điều khiển'] -> với ['trạng thái', 'Hồ sơ được cập nhật. ' ];

Làm cách nào để chuyển thông báo lỗi từ bộ điều khiển sang chế độ xem trong laravel?

Làm cách nào để gửi thông báo lỗi từ chế độ xem Bộ điều khiển trong laravel? .
chuyển hướng trở lại[]->back[]->with['tin nhắn', 'NÓ HOẠT ĐỘNG. ' ];
Hiển thị thông báo nếu nó tồn tại
@if[session[]->has['tin nhắn']]
{{ phiên[]->nhận['tin nhắn'] }}
.

Chủ Đề