Mở rộng Query Builder cho Laravel

Phải thừa nhận với những phương thức rất hữu ích được cung cấp sẵn (như findOrFail() hay firstOrFail()…), khiến cho làm việc với Laravel rất sướng. Tuy nhiên, sẽ có lúc bạn nhận ra rằng bạn còn cần nhiều hơn thế. Và đó là lúc bạn cần tự tay mở rộng Query Builder cho Laravel để phù hợp hơn với nhu cầu của mình. Hãy bắt đầu với một ví dụ đơn giản: bạn có một model News và một model Page, cả 2 model này đều sử dụng slug để tạo pretty URL. Và truy vấn của chúng ta...

Tính tổng có điều kiện trong Laravel

Trong quá trình thiết kế web cho khách hàng, một trong những truy vấn phổ biến nhất mà QMAS hay gặp phải đó là tạo các truy vấn tính toán tổng số lượng theo điều kiện. Liệu bạn có hỏi: truy vấn này đâu có gì phức tạp. Đúng vậy, đây là một truy vấn rất bình thường. Tuy nhiên, không phải ai cũng biết cách để tối ưu nó sao cho đạt hiệu quả cao nhất. Hãy thử lấy một ví dụ: khách hàng của bạn có một dịch vụ đăng ký nhận email theo dõi và bạn muốn...

Tối ưu hóa truy vấn dữ liệu trong Laravel Controller

Hiệu suất của ứng dụng và đặc biệt là những cách sử dụng tốt hơn với lớp cơ sở dữ liệu để cải thiện hiệu suất của các ứng dụng luôn là một trong những vấn đề được quan tâm hàng đầu trong các website, phần mềm của QMAS. Hôm nay tôi muốn chia sẻ một quy tắc mà chúng tôi thấy vô cùng hữu ích, và luôn áp dụng khi xây dựng các ứng dụng Laravel của mình. Nguyên tắc đó là: “hãy tối ưu các truy vấn cơ sở dữ liệu trong phạm vi ngoài của ứng dụng...

Tuân thủ nguyên tắc DRY trong Laravel với Single Action Class

Một câu hỏi kinh điển thường xuất hiện khi nói về kiến trúc ứng dụng, đó là: “tôi nên đặt đoạn code này ở đâu?”. Mặc dù Laravel là một framework rất linh hoạt, tuy nhiên câu trả lời cho câu hỏi này không phải lúc nào cũng dễ dàng. Viết logic trong Controller là hoàn toàn ổn khi bạn biết mình sẽ chỉ có một endpoint duy nhất trong ứng dụng sử dụng logic này. Nhưng ngày nay, việc có nhiều endpoint chia sẻ các chức năng giống nhau là điều rất phổ biến. Ví dụ, hầu hết các...

Laravel 8 có gì mới

Sự kiện Laracon mới nhất đã được diễn ra vào thứ Tư, 26/08/2020 theo giờ Mỹ, được tổ chức trực tuyến thay vì một hội nghị thông thường. Có tất cả 15 diễn giả đã thực hiện những bài thuyết trình của mình, trong đó có một diễn giả đặc biệt được mọi người đang chờ đợi hơn cả... Taylor Otwell bước lên bục (ảo) để thông báo về các tính năng sắp có trong phiên bản tiếp theo của Laravel 8. Anh bắt đầu với một số thay đổi nhỏ, trước khi thực sự nói về những tính năng...

Thiết lập File & Directory Permission chính xác cho ứng dụng Laravel

Laravel là một Framework tương đối dễ dàng để thiết lập và làm việc. Tuy nhiên, cũng như tất cả mọi ứng dụng PHP khác, nếu không được thiết lập quyền hạn cho các file và thư mục một cách chính xác, ứng dụng Laravel của bạn cũng sẽ dễ dàng bị hack và gặp những sự cố trong quá trình hoạt động. [toc title="Danh sách chương:"][/toc] Một ví dụ khá đơn giản đó là, nếu bạn cấp cho bất kỳ thư mục nào của mình quyền 777, bạn đang cho phép BẤT CỨ AI đọc, ghi và thực thi...

Laravel Octane - Những điều cần lưu ý

Tuần trước, Laravel Octane đã tung ra phiên bản chính thức v1.0, đánh dấu bước phát triển mới của package rất đáng kỳ vọng này. Và nếu cũng đang cân nhắc áp dụng Octane cho ứng dụng của mình, có một số vấn đề bạn cần hiểu kỹ càng. Những vấn đề đó là gì, mời bạn cùng tìm hiểu với QMAS - Thiết kế web Quảng Ninh nhé. Laravel Octane là gì? Laravel Octane là một package mã nguồn mở được viết ra với mục đích giúp tăng tốc nhiều lần cho các ứng dụng Laravel. Laravel Octane yêu...