THẢO LUẬN

thg 7 30, 2020 5:01 SA

@phuongdong1995 Queue work xong thì nó chờ sự kiện để thực thi. Nên chỉ cần chạy 1 lần hoặc khởi động lại khi server bị lỗi. Vậy dùng suppervisor là chuẩn rồi. Nên mark solution này nha 😃)

0

Lâu lâu cũng gặp các cao thủ như vậy. Nếu sau muốn sửa thì phải kiếm hết 20 chỗ để sửa. Bác đã chia kiểu trên thì chia luôn ra 2 loại: ObjectBuilder{} hay ObjectService{} và AbcBuilder{}/AbcService{} Cái nào chung thì gọi ObjectBuilder, riêng thì gọi AbcBuilder.

0

Bạn vào public/storage ... xem có ảnh chưa. Nếu chưa chạy php artisan storage:lịnk

0

Cho em hỏi có ai làm được chưa, làm theo mà lỗi không à ?

+1

nếu bạn chỉ muốn gửi dữ liệu bất kì đi mà ko muốn lưu vào DB thì bạn bỏ SerializesModels ở event đó đi là được nhé:

Screenshot 2020-07-30 at 12.05.49.png

0

@nhoxhocju Trong model Quyen

public function quyens()
{
        return $this->belongsToMany('App\Quyen', 'quyen_ungdung', 'quyen_id', 'ungdung_id);
}

Trong eloquent hay controller:

$ungDungWithQuyen = $this->ungdung->with(['quyens'])->get();

Trong view:

foreach($ungDungWithQuyen as $ungDung){
    // ..........
    if($ungDung){
        foreach($ungDung->quyens as $quyen){
            //........
        }
    }
}
0
thg 7 30, 2020 3:19 SA

bài viết rất bổ ích

+1
Avatar
đã bình luận cho bài viết
thg 7 30, 2020 3:19 SA

hay quá anh ơi 👍

0

contruct.png Cho mình hỏi cái chỗ contruct ở event này sao cứ phải là model đó thì mới được? Mình muốn chỉ phát dữ liệu đi thôi chứ ko muốn lưu vào db. Dữ liệu có thể chỉ là 1 string tin nhắn. Mình có thử xóa model đó đi, chỉ gửi 1 string thôi nhưng queue báo "Failed"

0
thg 7 30, 2020 2:29 SA

(sohai)

0

Rất chi tiết, cảm ơn bạn

0
Avatar
đã bình luận cho bài viết
thg 7 29, 2020 4:42 CH

Theo như bạn nói thì mình hình dung vấn đề của bạn đang gặp phải giống như khi xử lý submit form wizard. Với mỗi request khác nhau Rails sẽ tạo ra một thread để xử lý request đó, về cơ bản trong cùng một process thì các thread có thể chia sẻ memory với nhau nên bạn có thể sử dụng một global variable để làm flag. Tuy nhiên để có thể roolback lại khi có một request thất bại thì bắt buộc các request trước đó phải pending lại, điều này là không khả thi. Theo mình thì có 2 phương án mà bạn có thể thử:

  1. Sử dụng session(server) hoặc localstorage(client)
    • Thay vì mỗi bước bạn thực hiện gửi request update vào DB thì bạn sẽ lưu dữ liệu mà người dùng nhập vào session hoặc localstorage.
    • Khi người dùng thực hiện xong bước 3 thì mới gửi một request lên để update 3 trường trong DB cùng lúc.
  2. Sử dụng gem paper_trail (https://github.com/paper-trail-gem/paper_trail)
    • Đây là một gem quản lý các version của một record.
    • Bạn có thể giữ nguyên logic hiện tại (3 bước gửi 3 request), khi có một bước nào đó thất bại thì bạn chỉ cần restore lại version trước đó của user.
+1

Bài toán này là với mỗi movie mà user đang xem sẽ gợi ý các movies mà user đó có khả năng xem nhiều nhất ý bạn. Ví dụ như bạn đang xem youtube bài của sky chẳng hạn thì bên góc phải của youtube sẽ show thêm các bài khác của sky ý. Kiểu vậy

0

Đã chạy ngon. Cảm ơn bạn nha

0

chào bạn,

Do các route bạn viết thêm vào nằm ở dưới route any, do đó khi bạn gọi từ client lên server nó chỉ chạy tới route any, vì ở any nó đã bắt tất cả các trường hợp rồi.

Giải pháp là để route any xuống cuối cùng cùng file là đc nhé

0

Bài toán này bạn truyền tham số input là id movie hay id user để input đầu ra : img1.PNG

Theo mk nghĩ bài toán bạn làm trên gợi ý tất cả người dùng khi xem phim? Mong bạn giải đap cho mk nhé. Thank you ^^. ❤️ you 😆😆

0

Anh ơi cho em đã config như sau: MARIADB_VERSION=latest MARIADB_DATABASE=sonduong MARIADB_USER=sonduong MARIADB_PASSWORD=123456 MARIADB_PORT=33060 MARIADB_ROOT_PASSWORD=root MARIADB_ENTRYPOINT_INITDB=./mariadb/docker-entrypoint-initdb.d

Nhưng sau khi docker-compose up lên thì cái container mariadb nó không tự tạo cái db và cái tài khoản user trên ạ. Anh có thể giải thích cho em tại sao không ạ ?

0
thg 7 29, 2020 7:00 SA

👍👍👍

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