Yêu cầu thg 2 20, 2020 9:08 SA 490 0 2
  • 490 0 2
+1

Laravel: Update data vào mảng cách tối ưu nhất

Chia sẻ
  • 490 0 2

Trong laravel mình muốn update dữ liệu vào mảng tối ưu nhất. bởi vì trên API gửi từ APP về liên tục. Mình đã sữ dụng array_push() or $arr[]..để nối dữ liệu thêm sau vào sau mảng thêm trước, Không biết các bác có cách nào nhanh, và tối ưu nhất... xin tham khảo ý kiến với ạ

thg 2 20, 2020 10:03 SA

Mình chưa hiểu rõ câu hỏi của bạn lắm:

bởi vì trên API gửi từ APP về liên tục

Ý bạn có phải là dưới app sẽ thực hiển đẩy dữ liệu liên tục, rồi server sẽ lấy data và đẩy vào một cái mảng. Bạn lưu cả cái mảng đấy vào trong database? 🤔

Avatar Ti Em @thanhminh1998
thg 2 20, 2020 10:20 SA

@huukimit Chính xác là như z ạ. em sữ dụng foreach để lấy dữ liệu hiện tại có trong ĐB, rồi em sữ dụng array_push() nối chuỗi hiện tại và dưới app gửi lên xong em update lại ạ

thg 2 21, 2020 12:42 SA
Avatar Ti Em @thanhminh1998
thg 2 21, 2020 2:47 SA

trong mỗi id có cột tracking với dữ liệu thêm vào là 1 kiểu json: [{type,thoi_gian},{type,thoi_gian},......] mỗi lần app gửi xuống là nó update vào trong cột tracking push về sau

2 CÂU TRẢ LỜI


Đã trả lời thg 2 22, 2020 1:56 SA
+1

@thanhminh1998 Nếu lưu vào dữ liệu gửi lên vào một bảng thì sau bạn nhỉ? Mỗi lần app gửi dữ liệu lên server thì mình lưu thành một row mới trong database. VD:

id user_id type json_value created_at
1 1 view_post_tracking { "postID": 1, "title": "First post" } 2020-02-21 04:00:00
2 1 view_post_tracking { "postID": 2, "title": "Sencond post" } 2020-02-21 05:00:00
3 1 view_post_tracking { "postID": 3, "title": "Third post" } 2020-02-21 06:00:00
4 1 open_link_tracking { "postID": 2, "title": "Second post" } 2020-02-21 07:00:00

Lúc nào bạn cần dùng thì query tất cả các row trong database ra. 🤔

SELECT logs.*
FROM logs
WHERE user_id = 1 AND type = 'view_post_tracking'
Chia sẻ
thg 2 22, 2020 1:59 SA

@thanhminh1998 Bạn thử xem xét cách tách cái cột tracking thành bảng tracking_logs của mình ở trên xem. Tách cột tracking ra bảng logs riêng thì sẽ không bị vấn đề phải lấy array data cũ ra, push item mới rồi lưu lại nữa.

Đã trả lời thg 2 20, 2020 9:14 SA
-1

thật sự không hiểu bạn hỏi gì : ))

Bạn có thể nêu vấn đề chi tiết hơn không ạ

Chia sẻ
Avatar Ti Em @thanhminh1998
thg 2 20, 2020 9:20 SA

Em đang viết API Cập nhập tracking, em làm update được rồi. nhưng dữ liệu gửi xuống liên tục, em muốn sữ dụng cách nào đó nó tối ưu hơn. đơn giản là vậy từ trên mobile gửi dữ liệu xuống sau đó API update nó. cứ gửi xuống là em update vào sau cái mảng đó.

Avatar Hải Hà @HaiHaChan
thg 2 20, 2020 9:20 SA

@hongquanfit thanh niên toàn xóa câu hỏi sau khi được support nãy nè 🤣

Avatar Ti Em @thanhminh1998
thg 2 20, 2020 9:22 SA

@HaiHaChan em không bjk tắt comment ạ.

thg 2 20, 2020 9:24 SA

@thanhminh1998 bạn hỏi xong đừng xóa câu hỏi nhé 😄

Vấn đề không hiểu ở đây là bạn đang sử dụng trong ngữ cảnh nào, bạn đang viết thông báo cho hay làm gì??

Nếu bạn muốn push data vào 1 mảng thì chỉ có sử dụng array_push chứ đâu còn cách nào khác?

nên mình đang không hiểu bạn muốn tối ưu gì nữa??

Avatar Ti Em @thanhminh1998
thg 2 20, 2020 9:32 SA

@hongquanfit nãy em post nhầm chỗ rồi em k bjk tắt comment chỉ thấy delete thôi ạ. cảm ơn sư phụ

Avatar Hải Hà @HaiHaChan
thg 2 20, 2020 9:44 SA

@thanhminh1998 sau ReplyShare có kí hiệu ... bạn click vô sẽ hiển thị dropdown cho phép bạn edit/delete comment nhé

Avatar Ti Em @thanhminh1998
thg 2 20, 2020 9:46 SA

@HaiHaChan chỉ edit với xóa thôi ạ.

thg 2 20, 2020 9:57 SA

@thanhminh1998 Mình thấy vừa nãy bạn post nhầm chỗ xong admin có vào báo và bảo là đã chuyển bài bạn đăng về lại chuyên mục question rồi đó. 😃

thg 2 20, 2020 9:58 SA

Nhưng có vẻ bạn không biết nên lại xóa mất câu hỏi mà đã được mọi người support trước đó 😃

Avatar Ti Em @thanhminh1998
thg 2 20, 2020 9:59 SA

@huukimit em không biết ạ. mới lần đầu hỏi đáp. Em thường đọc bài thôi ạ

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí