gpt4 book ai didi

ruby-on-rails - 实时查看用户是否在线

转载 作者:行者123 更新时间:2023-12-04 05:47:30 25 4
gpt4 key购买 nike

我想检查用户此时是否在线。这应该显示在用户个人资料中。

我在我的 application_controller

中得到了这个
after_filter :user_activity

private

def user_activity
current_user.try :touch
end

我在 user-model

中定义了这个
def online?
updated_at > 10.minutes.ago
end

如果用户在线,我可以查看 View :(HAML)

- if @user.online?

这可行,但更新此信息总是需要重新加载页面。它怎么能做成实时检查呢?也许使用 ActionCable?

PS:使用设计

最佳答案

是的,Action Cable 可用于此。 Rails 指南在这里有(一半)这样的例子:Action Cable Overview -- 6.1 Example 1: User Appearance

基本上,您创建一个 AppearanceChannel 并且每个用户都订阅它。订阅调用 current_userappear 函数,然后可以广播出去(例如,向其他用户显示在线状态),通常通过像 这样的后台作业BroadcastAppearanceJob。(我自己刚刚开始解决这个问题)。

关于ruby-on-rails - 实时查看用户是否在线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39458000/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com