我想在我的模型上通知一个关于创建/更新/删除事件的频道。
例如:
defmodule PhoenixLibrary.Books do
def delete_book(%Book{} = book) do
PhoenixLibrary.Endpoint.broadcast("books:updates", "delete", %{id: book.id})
Repo.delete(book)
end
end
将商店这样的代码放在上下文中是否可以?
我在某处阅读“elixir方式”将这些代码放入控制器。但是我希望在从控制台或管理面板(如ex_admin)更改上下文时广播这些事件。
答案 0 :(得分:0)
我是凤凰城的新手,但对我来说这看起来不错。有些人可能会争论广播是否属于您的业务逻辑,但是在您的示例中在上下文中进行广播是最简单且最一致的方式,而不会过度复杂。