Cách đặt trường laravel duy nhất với các ví dụ

Trong Laravel, bạn có thể đặt một trường là duy nhất bằng cách sử dụng quy tắc duy nhất trong xác thực của mình. Đây là một ví dụ về cách bạn có thể làm điều này

use Illuminate\Validation\Rule;

public function store(Request $request) { $request->validate([ 'email' => ['required', 'email', Rule::unique('users')->ignore($request->user()->id)], 'username' => ['required', Rule::unique('users')->ignore($request->user()->id)], ]);

// The email and username fields are unique, so we can continue with creating the user... }

Trong ví dụ này, phương thức `store` đang xác thực rằng các trường `email` và `tên người dùng` là duy nhất trong bảng `người dùng`, trong khi bỏ qua ID của người dùng hiện tại. Điều này cho phép người dùng hiện tại cập nhật email hoặc tên người dùng của họ mà không vi phạm quy tắc duy nhất

Quy tắc `duy nhất` chấp nhận tên của bảng cơ sở dữ liệu làm đối số đầu tiên và bạn cũng có thể chuyển tên cột làm đối số thứ hai nếu bạn muốn kiểm tra tính duy nhất trên một cột cụ thể

Bạn cũng có thể chuyển các tùy chọn bổ sung cho quy tắc `duy nhất`, chẳng hạn như thông báo lỗi tùy chỉnh hoặc tên kết nối tùy chỉnh để sử dụng cho truy vấn cơ sở dữ liệu. Để biết thêm thông tin về tất cả các tùy chọn có sẵn cho quy tắc duy nhất, bạn có thể tham khảo tài liệu về Laravel

Trong bài viết này, tôi sẽ đưa ra 1 ví dụ minh họa về cách sử dụng Cách laravel thiết lập trường duy nhất với các ví dụ .

Cách đặt trường laravel duy nhất với các ví dụ
Schema::table('manufacturers', function($table)
{
    $table->string('name')->unique(); 
});

Mong được hỗ trợ bạn kịp thời hơn. Vui lòng tìm các ví dụ minh họa bổ sung xung quanh câu hỏi' Làm thế nào để laravel thiết lập trường duy nhất với các ví dụ

Làm cách nào để thêm xác thực duy nhất với nhiều trường trong Laravel?

Đôi khi, chúng tôi cần thêm xác thực duy nhất với nhiều trường cho tên người dùng, v.v. như công ty evry có tên người dùng duy nhất. tại thời điểm đó nếu bạn kiểm tra email hoặc tên người dùng duy nhất thì bạn phải viết truy vấn cơ sở dữ liệu theo cách thủ công và thực hiện việc đó bằng điều kiện if. nhưng laravel cung cấp quy tắc "duy nhất" sẽ giúp dễ dàng thêm xác thực duy nhất

Làm cách nào để xác thực một trường là duy nhất trong một bảng?

Từ các tài liệu duy nhất. bảng,cột,ngoại trừ,idColumn Trường được xác thực phải là duy nhất trong một bảng cơ sở dữ liệu nhất định. Nếu tùy chọn cột không được chỉ định, tên trường sẽ được sử dụng. Chỉ định tên cột tùy chỉnh. 'email' => 'duy nhất. người dùng,email_address'

Làm cách nào để tạo một trường duy nhất trong quá trình di chuyển?

Khi bạn biết mình có một trường mà bạn muốn là duy nhất, chẳng hạn như tiêu đề bài đăng trong ví dụ này, bạn có thể xác định rằng trường cần phải là duy nhất trong quá trình di chuyển. Điều này sẽ tạo ra một chỉ mục trong cơ sở dữ liệu sẽ ngăn hai hàng trong bảng có cùng tiêu đề khi bạn thử và lưu bản ghi

Truy vấn riêng biệt trong framework Laravel hùng hồn là gì?

Truy vấn DISTINCT trong khung ELOQUENT LARAVEL là một chức năng quan trọng. Tuy nhiên, do một vài thiếu sót, truy vấn này hạn chế sử dụng. LARAVEL mặc dù có khá nhiều truy vấn khác thực hiện một công việc đáng khen ngợi không kém, đó là trả về các giá trị khác biệt

Làm cách nào để bạn tạo một cột duy nhất trong quá trình di chuyển Laravel?

Làm cách nào để tạo một cột duy nhất trong quá trình di chuyển? . $table->unique('slug'); So you add unique index to existing 'slug'.

Khóa duy nhất trong quá trình di chuyển Laravel là gì?

Laravel sẽ tự động tạo một tên chỉ mục duy nhất dựa trên tên bảng, tên cột và loại chỉ mục (duy nhất) khi tạo chỉ mục. Để xóa một chỉ mục duy nhất, trước tiên bạn phải đặt tên cho nó. Tạo một chỉ mục duy nhất với tên_user_email_unique . users_email_unique - là tên của Chỉ mục duy nhất.

Làm cách nào để thêm một cột trong quá trình di chuyển Laravel mà không làm mất dữ liệu?

Đảm bảo rằng khi bạn thêm cột mới vào bảng của mình, cột đó phải có giá trị rỗng và không phải là duy nhất . Nếu không, bạn sẽ phải đối mặt với lỗi. Bởi vì khi một cột mới được tạo, nó sẽ trống (không phải là duy nhất). Trong điều kiện đó, bạn phải khôi phục quá trình di chuyển.

Cái gì là nullable trong Laravel?

Điều đó có nghĩa là trường tên đệm cũng có thể lưu trữ giá trị null . như trong việc chèn một giá trị là không cần thiết. Hãy tưởng tượng một mẫu đăng ký chẳng hạn. Không phải ai cũng có tên đệm. Vì vậy, trong trường hợp đó, họ sẽ để trống trường middle_name và trong cơ sở dữ liệu, nó sẽ là null.