我想为movies这个外观创建一个映射:
{
title: "The Artist",
genres: ["Drama", "Comedy"]
}
Run Code Online (Sandbox Code Playgroud)
在ElasticSearch文档中,我看到了这个例子:
"properties" : {
"message" : {"type" : "string"},
"tags" : {"type" : "string", "index_name" : "tag"},
...
}
Run Code Online (Sandbox Code Playgroud)
但是,现在我很困惑..我期望看到的是:
"properties" : {
"message" : {"type" : "string"},
"tags" : {"type" : "array"}
}
Run Code Online (Sandbox Code Playgroud)
那么,为什么该示例仅提供对另一个索引的引用?我如何定义"标签"索引?或者,我什么时候使用该数组映射?
我希望在我的开发环境中有单元测试输出颜色.但是,我无法在Linux(Debian和Ubuntu)上运行它.当我包含以下库时:
require 'minitest/autorun'
require 'minitest/unit'
require 'minitest/pride'
Run Code Online (Sandbox Code Playgroud)
我明白了:
/usr/local/rvm/gems/ruby-1.9.2-p136/gems/minitest-2.3.1/lib/minitest/pride.rb:35:in `<top (required)>': undefined method `output' for MiniTest::Unit:Class (NoMethodError)
Run Code Online (Sandbox Code Playgroud)
由代码引起:
MiniTest::Unit.output = PrideIO.new(MiniTest::Unit.output)
Run Code Online (Sandbox Code Playgroud)
我见过一个有效的Rspec变种.不幸的是,我的Ruby知识还不足以看出差异.
我在UNIX上从事C/C++工作,经常看到核心文件.很多时候核心文件很难调试,以找到核心或分段错误的实际原因.你能建议我一个高效的调试器吗?
在ArangoDB的上下文中,有不同的数据库shell来查询数据:
arangosh:基于JavaScript的控制台
AQL:Arangodb查询语言,看到http://www.arangodb.org/2012/06/20/querying-a-nosql-database-the-elegant-way
MRuby:嵌入式Ruby
虽然我理解使用JavaScript和MRuby,但我不确定为什么我会学习,以及我将使用AQL的地方.有没有关于此的信息?是否将AQL直接POST到数据库服务器?
我试图使用Rails应用程序的设计来授予对Rack中间件中的Sinatra应用程序的访问权限.
我的config/routes.rb有:
authenticate "admin" do
mount Admins::Dashboard, :at => "/admins"
end
Run Code Online (Sandbox Code Playgroud)
在我的Sinatra应用程序中,我使用:
before do
env["warden"].authenticate!(:scope => "admin")
end
get "/dashboard" do
erb :dashboard
end
Run Code Online (Sandbox Code Playgroud)
现在,我得到以下stacktrace的错误:
Started GET "/admins/dashboard" for 127.0.0.1 at 2012-10-11 08:45:13 +0200
NoMethodError (undefined method `failure_app' for nil:NilClass):
devise (2.1.2) lib/devise/delegator.rb:11:in `failure_app'
devise (2.1.2) lib/devise/delegator.rb:5:in `call'
warden (1.2.1) lib/warden/manager.rb:130:in `call_failure_app'
warden (1.2.1) lib/warden/manager.rb:116:in `process_unauthenticated'
warden (1.2.1) lib/warden/manager.rb:47:in `call'
actionpack (3.2.8) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
rack (1.4.1) lib/rack/etag.rb:23:in `call'
rack (1.4.1) lib/rack/conditionalget.rb:25:in `call'
Run Code Online (Sandbox Code Playgroud) 我正在尝试将模式应用于D3条形图,但我得到的是:

我使用的绿色和红色图案定义如下:
var defs = this.svg.append("g:defs");
defs.append("g:pattern")
.attr("id", "red-fill")
.attr("patternUnits", "userSpaceOnUse")
.attr("width", "85")
.attr("height", "10")
.append("g:image")
.attr("xlink:href", "../10px-barchart-red.png")
.attr("x", 0)
.attr("y", 0)
.attr("width", 85)
.attr("height", 10);
var defs = this.svg.append("g:defs");
defs.append("g:pattern")
.attr("id", "green-fill")
.attr("patternUnits", "userSpaceOnUse")
.attr("width", "85")
.attr("height", "10")
.append("g:image")
.attr("xlink:href", "../10px-barchart-green.png")
.attr("x", 0)
.attr("y", 0)
.attr("width", 85)
.attr("height", 10);
情节是通过以下方式制作的:
this.svg.selectAll("rect")
.data(dataset, getKeys)
.enter()
.append("rect")
.attr('class', 'bar')
.attr("x", function(d, i) {
return x(i) + 44;
})
.attr("y", function(d, i) {
return y(d.value);
})
.attr("width", x.rangeBand())
.attr("height", function(d, … 一位同事在一个功能上工作了几个星期,现在git提交看起来像:
colleag add class 8b5bec5
colleag add change 3535adc5
colleag Merge branch 'NEW' of github.example.de:example/app into NEW 0cc2d24
colleag add change
colleag add validation 7eff440
colleag rebase done wrong merge f8e35e3
colleag Merge branch 'NEW' of github.example.de:example/app into NEW 2168ac6
colleag wrong merge a6ed636
colleag typo in spec 7b23633
Run Code Online (Sandbox Code Playgroud)
我猜他正在做:
git pull origin master
Run Code Online (Sandbox Code Playgroud)
在他的工作分支上.
所以,我的问题:
1)这是什么意思:
Merge branch 'NEW' of github.example.de:example/app into NEW 2168ac6
Run Code Online (Sandbox Code Playgroud)
这是一个合并提交,但为什么git与远程合并?
2)是否可以清除这些合并提交?我目前正在挑选提交,但不确定这是否是最好的.
阅读git日志后还可以建议其他什么?
我想在不同节点上的2个应用程序之间共享会话; 但是,我很困惑Cookie和Redis会话商店之间的区别; 例如,cookie会话可能如下所示:
rack.session=BAh7BkkiD3Nlc3Npb25faWQGOgZFRiJFN2YxZDMxMGE5YTNhZjc2NGM1NDBk%0AMzdiODQ0MjcyMzk5MzAxY2YyYzdhNDMwOWVkMzhiNWVlMmY2N2QwYzExNg%3D%3D%0A--ec4ec7b5a807c806e02e2811f4a11d05877a7698
Run Code Online (Sandbox Code Playgroud)
在Redis中,会话存储可能如下所示:
rack:session:eb23c0a055e9e6de3b8ad51efd9g6260d647b2e61326e35f5ff59cd490bfb405"
Run Code Online (Sandbox Code Playgroud)
但是,我很困惑如何分享这些会话.在cookie方法中,请求带有会话状态,我无法看到Redis中的会话实际上与2个应用程序中的状态匹配.有关如何在2个机架应用程序中使用Redis/share会话状态的任何建议吗?
看一下Journey路由器的自述文件(它是Rails 4.0路由器),它是空的.我想知道路由器在概念上如何工作,如果这个"抽象"语法正在抓住这个想法,那么路由器就像迷你编程语言一样:
ROUTE := GET|POST|PUT|DELETE path
path := (static_path) | (dynamic_path)
Run Code Online (Sandbox Code Playgroud)
那么,Rails 4.0路由器如何工作?