我使用ActionCable创建了以下内容,但无法接收任何正在广播的数据.
评论频道:
class CommentsChannel < ApplicationCable::Channel
def subscribed
comment = Comment.find(params[:id])
stream_for comment
end
end
Run Code Online (Sandbox Code Playgroud)
JavaScript:
var cable = Cable.createConsumer('ws://localhost:3000/cable');
var subscription = cable.subscriptions.create({
channel: "CommentsChannel",
id: 1
},{
received: function(data) {
console.log("Received data")
}
});
Run Code Online (Sandbox Code Playgroud)
它连接正常,我可以在日志中看到以下内容:
CommentsChannel is streaming from comments:Z2lkOi8vdHJhZGUtc2hvdy9FdmVudC8x
Run Code Online (Sandbox Code Playgroud)
然后我广播到那个流:
ActionCable.server.broadcast "comments:Z2lkOi8vdHJhZGUtc2hvdy9FdmVudC8x", { test: '123' }
Run Code Online (Sandbox Code Playgroud)
问题是received永远不会调用该函数.难道我做错了什么?
注意:我正在使用actioncablenpm包从BackboneJS应用程序连接.
如何解析一个简单的日期字符串,让JavaScript知道它实际上是一个UTC日期?目前,如果我这样做new Date('2015-08-27'),将其转换为我的时区.
现在,据我所知,after_validation即使模型未通过验证,也会被调用.如果模型有效,有没有办法只调用它?我尝试添加return false unless self.valid?的after_validation方式,但再次触发验证和它创建了一个无限循环.
Rails类名称可以包含数字吗?例如:
class Test123
end
Run Code Online (Sandbox Code Playgroud)
这是一个有效的课程吗?我uninitialized constant Test123尝试加载课程时收到错误.
如何测试日期以查看它是否在两个日期之间?我知道我可以进行两次大于和小于比较,但我想要一种RSpec方法来检查日期的"好坏".
例如:
it "is between the time range" do
expect(Date.now).to be_between(Date.yesterday, Date.tomorrow)
end
Run Code Online (Sandbox Code Playgroud)
我试过expect(range).to cover(subject)但没有运气.
我如何删除散列中的键数组?例如,您可以致电:
hash_array.delete(some_key)
Run Code Online (Sandbox Code Playgroud)
但是我该怎么做呢:
hash_array.delete([key1,key2,key3,...])
Run Code Online (Sandbox Code Playgroud)
不必要地循环遍历阵列.
nodeSelector有没有办法指定特定实例而不是Kubernetes 中使用的实例池?
如果没有,那么配置 Redis 集群(每个节点至少有 30GB 内存)的最佳方法是什么。这可以使用属性来完成吗resources?
顺便说一句,我目前正在创建 6 个池,每个池有 1 个实例,然后在配置中指定它,但它看起来不正确:
nodeSelector:
cloud.google.com/gke-nodepool: my-pool-1
Run Code Online (Sandbox Code Playgroud) 有没有办法在没有自动循环的情况下初始化Twitter Bootstrap Carousel?设置interval: false最初不会循环,但是一旦您单击next或prev,它就会再次开始循环.我根本不希望它循环.
编辑
这是我用来初始化它的jquery代码:
$(function() {
$('#carousel').carousel({interval: false});
});
Run Code Online (Sandbox Code Playgroud)
要在轮播中显示图像:
image_tag('image.png', :'data-target' => '#carousel', :'data-slide-to' => 1)
Run Code Online (Sandbox Code Playgroud) 使用savon gem,我得到以下请求XML:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wsdl="URL"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ins0="SOME URL">
<soap:Body>
<ins0:Test xmlns="SOME URL">
</ins0:Test>
</soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)
但它需要是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wsdl="URL"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Test xmlns="SOME URL">
</Test>
</soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)
通知ins0已删除.
有什么建议?
我们有一个包含大量数据(超过 100GB)的 Redis 实例。我们还有一个包含 6 个节点的空 Redis 集群。将所有数据从独立实例移动到 Redis 集群并使其均匀分布的最佳方法是什么?
ruby ×5
actioncable ×1
arrays ×1
date ×1
hash ×1
javascript ×1
kubernetes ×1
namespaces ×1
redis ×1
redis-server ×1
rspec ×1
savon ×1
validation ×1