ruby 如何通过通知宝石发送威胁通知?

bkhjykvo  于 2023-10-17  发布在  Ruby
关注(0)|答案(1)|浏览(89)

我的Ruby on Rails应用程序使用Noticed gem来传递通知。
我最近添加了Thredded gem来创建一个论坛部分,现在我有两个不同的通知图标。一个在我的主导航和一个只是在thredded论坛页面。
我目前有这样的初始化文件

Thredded.notifiers = []

这并没有禁用通知,所以我不太确定我可以在哪里修改。
我试着在thredded initialise文件中创建一个通知(使用Noticed),但这只会使我的应用程序崩溃。

Thredded.notifiers = [Noticed::ThreddedNotification.with(user: user.id).deliver_later(user)]

我可以在哪里修改通知?

l3zydbqr

l3zydbqr1#

我已经解决了我自己的问题,哈哈!:)
我生成了一个Noticed通知文件和一个自定义通知控制器,因为Thredded有一些特定的方法。然后在初始化文件中,我调用了那个控制器类的一个新示例。
线程初始化文件

Thredded.notifiers = [CustomThreddedNotiferController.new]

已通知的通知文件

class ForumNotification < Noticed::Base
  
  deliver_by :database
  
  param :user

  def user
    User.find(params[:user])
  end
  
  def message
    t(".message")
  end

  def url
    root_path
  end
end

自定义控制器

class CustomThreddedNotiferController < ApplicationController
  def initialize
  end

  def human_name
    'hello'
  end

  def key
    'email'
  end

  def new_post(post, users)
    user = User.find_by(id: users[0])
    ForumNotification.with(user: user.id).deliver_later(user)
  end

  def new_private_post(post, users)
    #
  end
end

相关问题