我想知道是否可以将current_user方法用于我们发送数据的咖啡文件中?
就我而言,我正在创建一些群组。我制作了两个容器来区分你和其他人。所以我试图在收到的函数中创建一个条件。但我不知道该怎么做(你可以在下面的代码中看到其中一个尝试)。
因此,如果您有解决方案,那就太棒了!
我的代码:
Views(index):带有两个容器
<div class="col-sm-12">
<div class="container">
<h1 style="text-align:center; margin-bottom: 30px; margin-top: 10px;">Your groups</h1>
<div id="groups_area">
</div>
</div>
<div class="container">
<h1 style="text-align:center; margin-bottom: 30px; margin-top: 10px;">Other groups </h1>
<div id="groups_out_area">
</div>
</div>
</div>
咖啡文件:
received: (data) ->
if data.group.admin_id == current_user.id
$('#groups_area').append(data.group)
else
$('#groups_out_area').append(data.group)
我是否必须在ActionCable文件中捕获它?正如你在这里看到的,我试图在speak方法中捕获它,但它不是真正的逻辑
class GroupsChannel < ApplicationCable::Channel
def subscribed
stream_from "groups"
end
def speak(data)
group = Group.create(name: data['group'], company_id: current_user.company_id, admin_id: current_user.id)
user_group = GroupsUser.create(user_id: current_user.id, group_id: group.id)
html = ApplicationController.render(partial: 'groups/group', locals: {
group: group
})
ActionCable.server.broadcast 'groups', group: html
end
end