Trang Chủ Lập trình 10 tính năng hiệu quả có thể bạn không biết về Laravel...

10 tính năng hiệu quả có thể bạn không biết về Laravel Eloquent

802
10 tính năng hiệu quả có thể bạn không biết về Laravel Eloquent

Với tất cả các tính năng có sẵn trong Laravel, thật khó để biết tất cả. Một số tính năng thậm chí không được ghi lại đúng cách. Trong bài viết này mình sẽ cung cấp cho bạn 10 tính năng Eloquent mà bạn có thể không biết.

1: Custom timestamp column names

Mặc định, khi tạo migration cho các Model thì có các dấu thời gian là created_at vàupdated_at. Bạn có thể ghi đè tên các cột này bằng cách xác định 1 biến không đổi trong Model mà bạn muốn ghi đè. Nếu Model sử dụng soft deletes bạn cũng có thể ghi đè cột deleted_at.

2: The exists property

Nó cho biết đối tượng có tồn tại trong database hay không.Khi bạn tạo mới một model instance thì thuộc tính exists sẽ set là false , khi model của bạn được lưu hoặc truy xuất từ database thì thuộc tính exists được set thành true

3: Dirty

  10 tính năng hiệu quả có thể bạn không biết về Laravel Eloquent
Quản lý Task và Back Stack như nào là hiệu quả?”]

Đôi khi bạn muốn kiểm tra sự thay đổi giá trị của các attributes của một object model, hoặc kiểm tra giá trị của chúng trước khi thay đổi,bạn có thể sử dụng phương thứcisDirty()

  • Ví dụ, bạn có 1 user như sau:

  • Kiểm tra xem có giá trị có bị thay đổi so với database ko?

4: Original

Sau khi thay đổi bản ghi Eloquent, bạn có thể lấy được các attribute gốc ban đầu bằng cách gọi getOriginal()

5: Cloning a model

  Bất ngờ: đào tạo AI lại gián tiếp phát thải CO2 gây hại cho môi trường

Bạn có thể clone một model bằng cách sử dụng replicate(). Nó sẽ tạo một bản sao của model thành một instance mới và chưa tồn tại.

6: Convert a model or collection to array

Phương thức toArray() có thể chuyển đổi 1 model hoặc collection thành mảng

7: Refresh

Phương thức refresh() sẽ làm mới model bằng cách lấy dữ liệu từ database, tất cả các relationships của nó cũng được làm mới.

8: Without events

Đôi khi bạn muốn tạo hoặc cập nhật 1 model mà không dùng bất kỳ event nào.Trong Laravel có thể thực hiện bằng cách sau

9: Push

Đôi khi bạn muốn lưu không chỉ nó, mà toàn bọ những gì liên quan tới nó thì bạn sử dụng phương thức push()

Nếu bạn gọi phương thức save() trên user thì address sẽ không được lưu

Bằng cách sử dụng push() thì cả user và address sẽ được lưu

10: Force a delete on a soft delete model

Bạn có thể cần thực xoá một model khỏi database. Để xoá vĩnh viễn một soft delete model, hãy sử dụng hàm forceDelete()

TechTalk via viblo.asia

  Coder Trung Quốc viết chatbot để nó thay mình nói chuyện với người yêu vì công việc quá bận rộn
  Sử dụng kỹ thuật ẩn mã, nhóm hacker này đã tấn công nhiều chính phủ trong 6 năm mà không ai biết

 

CHIA SẺ