Có thể gửi các biến trong quá trình chuyển đổi không? tức làChuyển biến cho Rails StateMachine chuyển đổi đá quý
@car.crash!(:crashed_by => current_user)
Tôi có callbacks trong mô hình của tôi, nhưng tôi cần phải gửi cho họ sử dụng người xúi giục quá trình chuyển đổi
after_crash do |car, transition|
# Log the car crashers name
end
tôi không thể truy cập CURRENT_USER bởi vì tôi là trong mô hình và không điều khiển /Lượt xem.
Và trước khi bạn nói điều đó ... Tôi biết tôi biết.
Đừng cố gắng để truy cập các biến session trong mô hình
tôi nhận được nó.
Tuy nhiên, bất cứ khi nào bạn muốn tạo một cuộc gọi lại để ghi lại hoặc kiểm tra nội dung nào đó thì có khả năng bạn sẽ muốn biết ai đã gây ra nó? Thông thường tôi muốn có một cái gì đó trong bộ điều khiển của tôi rằng đã làm một cái gì đó giống như ...
@foo.some_method(current_user)
và mô hình Foo của tôi sẽ được mong đợi một số người sử dụng để kích động some_method nhưng làm thế nào để tôi làm điều này với một sự chuyển tiếp với đá quý statemachine?
Bởi trùng hợp ngẫu nhiên, tôi lại gặp trở ngại trong câu hỏi của riêng mình trong tìm kiếm của Google và câu trả lời này rất hữu ích. Cảm ơn. –
Tôi nghĩ rằng điều này chắc chắn là tốt hơn so với User.current mà tôi thấy những người khác thực hiện khi họ chạy vào loại vấn đề này. Tương tác người dùng thuộc lớp điều khiển. –
Điều này hoạt động tốt, nhưng bạn * làm * phải đánh vần chính xác quá trình chuyển đổi. Giải pháp ở trên có thêm 's'. – Brenda