THẢO LUẬN

em đọc bài nào đấy gần đây hình như 5.6 trở đi là laravel new new_project chứ không dùng composer nữa thì phải ạ?

+1
thg 5 27, 2018 2:04 CH

😄 a quá khen rồi :v cái này dài quá nên để lần sau viết tiếp vậy.

0

Bài viết hay quá

+1

Good job bro! 😄

+2
Avatar
đã bình luận cho bài viết
thg 5 27, 2018 8:00 SA

Bạn làm như vậy không có ai hiểu đâu , ít nhất bạn cũng phải dẫn chứng bằng 1 số file

0
thg 5 27, 2018 7:58 SA

Cám ơn các bạn đã nhiệt tình giúp đỡ mình. Đọc câu giải thích của mọi người mình học và biết được thêm nhiều cái mới. Cám ơn tất cả ạ !

+1

Đúng rồi, sống cho đời nó đỡ ghét 😄 xem thì học 1 lần, viết này học lại lần nữa luôn 😄

0

Bạn còn source code này không cho mình tham khảo với 😄

0
thg 5 25, 2018 5:17 CH

@huukimit Em hiểu ạ.. e rất muốn voteup nhưng e chưa đủ 50 reputations nên e chưa vote được ạ... a thông cảm cho em với ạ... 😦

+2
thg 5 25, 2018 5:06 CH

Nếu thấy câu trả lời, comment của mình hay và hữu ích, bạn đừng quên vote up nha :v Mục đích không phải vì điểm Viblo cho mình mà là để tạo sự uy tín/hữu ích cho câu trả lời hay comment. Để người khác giống bạn vào đây có cơ sở chọn lọc thông tin mà giải quyết vấn đề. Cũng là giúp nội dung trên Viblo trở nên chất lượng hơn!

+2
thg 5 25, 2018 5:04 CH

@minhtuancnttk39 Mình có bổ sung thêm thông tin ở cuối câu trả lời để câu trả lời được hoàn chỉnh, có thể tóm gọn lại như sau:

  • B1: Tạo migration, thêm cột mới.
  • B2: Tạo CustomDatabaseChannel, overwrite buildPayload để trả về thêm dữ liệu sender_id cần lưu.
  • B3: Thêm method via vào Notification, để áp dụng lưu dữ liệu qua CustomDatabaseChannel thay thế:
public function via($notifiable)
{
    return [CustomDatabaseChannel::class];
}

Sau khi thực hiện đủ các bước trên, nếu vẫn lỗi bạn mở laravel.log xem nó báo lỗi như nào nha.

+2
thg 5 25, 2018 4:51 CH

@huukimit Đây là code chưa custom của buildPayload method ạ...

protected function buildPayload($notifiable, Notification $notification)
    {
        return [
            'id' => $notification->id,
            'type' => get_class($notification),
            'data' => $this->getData($notifiable, $notification),
            'read_at' => null,
        ];
    }

Sau khi e custom lại như code dưới, cùng trong DatabaseChanel luôn ạ, thì nó không lưu được vào DB để query nữa... E đang tìm hiểu tại sao ạ?

protected function buildPayload($notifiable, Notification $notification)
    {
        return [
            'id' => $notification->id,
            'type' => get_class($notification),
            'idUser' => Auth::user()->id,
            'data' => $this->getData($notifiable, $notification),
            'read_at' => null,
        ];
    }
+1
thg 5 25, 2018 4:43 CH

@minhtuancnttk39

Tạo DatabaseChanel mới như thế thì mình đặt tên khác chứ đúng không bạn? Vì DatabaseChanel có sẵn rồi ạ?

Bạn đặt tên như nào cũng được, miễn là class bạn tạo khác namespace và extends cái class cũ. Và overwrite lại method send.

A có thể cho em hỏi buildPayload method trong DatabaseChanel ta có thể thêm user_id được không ạ? (Ý em là thêm như thế để e có thể truy xuất được người gửi comment để thông báo cho author ấy ạ..

Chính xác! Từ phiên bản Laravel 5.6, thay vì khai báo trực tiếp một array trong method send, thì method send sẽ gọi sang buildPayload (được thêm mới) để lấy dữ liệu. Chắc chắn bạn đang dùng Laravel 5.6, như vậy bạn overwrite lại buildPayload là được.

+2
thg 5 25, 2018 4:25 CH

Bạn cho mình hỏi:

  • Tạo DatabaseChanel mới như thế thì mình đặt tên khác chứ đúng không bạn? Vì DatabaseChanel có sẵn rồi ạ?

  • A có thể cho em hỏi buildPayload method trong DatabaseChanel ta có thể thêm user_id được không ạ? (Ý em là thêm như thế để e có thể truy xuất được người gửi comment để thông báo cho author ấy ạ..

+1
thg 5 25, 2018 8:38 SA

cái này giải quyết đươc vấn đề gì vậy ad?

0

Chuẩn rồi bạn ^^ Thuận tiện cho việc test trên nhiều version

0
thg 5 25, 2018 7:15 SA

Cảm ơn bài viết của bác nhé. nhưng có câu này cần chỉnh lại "Custom Control public một thuộc tính là Camera được sử dụng để điều khiển xem Video Stream được hiển thị từ camera phía trước hoặc phía sau của thiết bị." 2 chữ đầu phải sữa lại thành CameraOptions nhé. Để vậy đọc khó hiểu

0

Cám ơn bạn nhé! Chức năng này thích hợp dùng để phân biệt các môi trường test (dev, stg, pro) trên cùng 1 bản build, nhiều lúc QA bị nhầm khi download build từ testflight về 😄

0

👍 Em cứ mạnh dạn chia sẻ đi 👍

Anh cùng mọi người khác sẽ tích cực vào review, bàn luận mà 😉

0

dạ vâng, e cảm ơn a đã giải đáp thắc mắc cho e ạ. e định sớm viết một bài về việc tìm hiểu blockchain, mong a sẽ review và góp ý cho e ạ. e cảm ơn ạ

+1
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í