我正在使用 Rails 3 和 Ruby 1.9。
我在各种 Rails 测试(和控制台)中运行 2 种方法。方法被调用index_cases,index_new_cases方法体如下所示。该index_new_cases方法的内容可能不相关(我正在使用 Sunspot gem 索引 ModelCase 信息),但为了完整性我将其保留在那里。
我有 3 case_numbers。每个case_number匹配ModelCase数据库中的一个(即数据库中有 3ModelCase条记录)。
当我使用这 3 个case_numbers对index_cases方法运行测试时,该index_new_cases方法不会使用该ModelCase.where…方法检索任何案例。但是,如果我删除方法中的“线程”调用index_cases,该index_new_cases函数现在会检索所有 3 个案例并正确索引它们。
谁能向我解释为什么我的线程找不到数据库记录?我的线程实现是错误的吗?谢谢!
def index_cases(case_numbers)
threads = []
case_numbers.each_slice(500) do |slice_of_case_numbers|
threads << Thread.new(slice_of_case_numbers) do |a_slice|
index_new_cases(a_slice)
end
end
threads.each {|thr| thr.join}
end
def index_new_cases(case_numbers)
cs = ModelCase.where(case_number: case_numbers).includes(:child_tables)
puts cs.size # …Run Code Online (Sandbox Code Playgroud) 嗨,我正在使用MacVim 7.3我正在关注一个名为smash to Peim的PeepCode教程.
其中一个主题是为某些命令分配各种"映射"(我将它们视为快捷方式或别名).
例如,这是我的一部分.vimrc文件(见下文)帮助文件说默认情况下被指定为反斜杠(\).但是,当我进入命令行模式并键入:\ tt时,我收到以下错误:
E10:\应该跟/,?要么 &
对我做错了什么的想法?我可以告诉macvim b/c我正在使用我的.vimrc文件我使用该文件来交换分号和冒号绑定现在; 将导致编辑器进入命令行模式.
" Tab mappings.
map <leader>tt :tabnew<cr>
map <leader>te :tabedit
map <leader>tc :tabclose<cr>
map <leader>to :tabonly<cr>
map <leader>tn :tabnext<cr>
map <leader>tp :tabprevious<cr>
map <leader>tf :tabfirst<cr>
map <leader>tl :tablast<cr>
map <leader>tm :tabmove
" Controversial...swap colon and semicolon for easier commands
nnoremap ; :
nnoremap : ;
vnoremap ; :
vnoremap : ;
Run Code Online (Sandbox Code Playgroud) 我不确定这是否可行,但在ruby中,您可以使用send动态调用方法
例如,如果我想调用对象的bar方法,foo,我可以使用
foo.send("bar")
Run Code Online (Sandbox Code Playgroud)
有没有办法用objective-c做类似的事情?
TKS!
我已经能够使用标准的"ProgressDialog"for android来显示一个不确定的任务正在运行.

但是我想使用"较小"的进度对话框"spinner",它用于一些标准Android应用程序中的不确定任务,例如android Market(有一个小旋转圈实际上集成到应用程序窗口中(而不是浮动)在它的上面).
有谁知道如何创建较小的进度对话框(或者有人能指出我正确的方向)?
我想用引入nokogiri提取所有节点中包含特定属性名的元素.
例如,我想在下面的文档中找到包含属性"blah"的2个节点.
@doc = Nokogiri::HTML::DocumentFragment.parse <<-EOHTML
<body>
<h1 blah="afadf">Three's Company</h1>
<div>A love triangle.</div>
<b blah="adfadf">test test test</b>
</body>
EOHTML
Run Code Online (Sandbox Code Playgroud)
我发现这个建议(下)在这个网站:http://snippets.dzone.com/posts/show/7994,但它并不在本例中返回到上面的2个节点.它返回一个空数组.
# get elements with attribute:
elements = @doc.xpath("//*[@*[blah]]")
Run Code Online (Sandbox Code Playgroud)
关于如何做到这一点的想法?
谢谢!我在这里找到了这个
我正在使用Ruby 1.9,我想知道是否有一个简单的正则表达方式来做到这一点.
我有很多字符串看起来像这样的一些变化:
str = "Allocation: Random, Control: Active Control, Endpoint Classification: Safety Study, Intervention Model: Parallel Assignment, Masking: Double Blind (Subject, Caregiver, Investigator, Outcomes Assessor), Primary Purpose: Treatment"
Run Code Online (Sandbox Code Playgroud)
我的想法是,我想将这个字符串分解为其功能组件
字符串的"语法"是存在"密钥",其由一个或多个"单词或其他字符"(例如干预模型)组成,后跟冒号(:).每个键都有一个相应的"值"(例如,并行赋值),紧跟在冒号(:)之后......"值"由单词,逗号(无论如何)组成,但"值"的结尾用逗号表示.
键/值对的数量是可变的.我还假设冒号(:)不允许成为"值"的一部分,并且逗号(,)不允许成为"键"的一部分.
人们会认为有一种"regexy"方法可以将其分解为组件,但我尝试制作一个合适的匹配正则表达式只会选择第一个键/值对,而我不确定如何捕获其他键.关于如何捕捉其他比赛的任何想法?
regex = /(([^,]+?): ([^:]+?,))+?/
=> /(([^,]+?): ([^:]+?,))+?/
irb(main):139:0> str = "Allocation: Random, Control: Active Control, Endpoint Classification: Safety Study, Intervention Model: Parallel Assignment, Masking: Double Blind (Subject, Caregiver, Investigator, Outcomes Assessor), Primary Purpose: Treatment"
=> "Allocation: …Run Code Online (Sandbox Code Playgroud) 我正在使用objective-c和iphone 3.0 sdk
我想检索URL(网页或pdf)的内容并在其中显示 UIWebView
似乎要做的事情是这样的:
NSURLRequest *requestObject = [NSURLRequest requestWithURL:myURL];
[myUIWebView loadRequest:requestObject];
Run Code Online (Sandbox Code Playgroud)
除了1件事之外,这种方法效果很好.
有些情况下请求需要一段时间(比方说5-10秒).我有一个UIActivityIndicatorView,我想在加载请求的开始和结束时"开始"和"停止".
但是,如果我这样做
[busySignal startAnimating];
NSURLRequest *requestObject = [NSURLRequest requestWithURL:myURL];
[myUIWebView loadRequest:requestObject];
[busySignal stopAnimating];
Run Code Online (Sandbox Code Playgroud)
它不起作用,因为loadRequest调用是异步完成的,因此我的UIActivityIndicatorView几乎立即停止
有没有办法在URL请求的开头和结尾开始/停止我的"busySignal"?
作为替代方案,我认为这可以通过NSURLConnection完成,它给我回调函数"connectionDidFinishLoading:"
但我似乎无法弄清楚如何从NSURLConnection转到显示网页.
所以,我猜这是两个问题.
1.您可以在调用loadRequest的开头/结尾处启动/停止UIActivityIndicatorView: 2.如何使用NSURLConnection检索URL的内容并在UIWebView上显示信息?
谢谢!
我有一个包含以下文本的字符串
String my_string = "hello world. it's cold out brrrrrr! br br";
Run Code Online (Sandbox Code Playgroud)
我想替换每个隔离 BR与<br />
问题是我想避免将字符串转换为
"hello world. it's cold out <br />rrrrr! <br /> <br />";
Run Code Online (Sandbox Code Playgroud)
我想做的是将字符串(使用replaceAll)转换为
"hello world. it's cold out brrrrrr! <br /> <br />";
Run Code Online (Sandbox Code Playgroud)
我确信这很简单,但我的正则表达式是不正确的.
my_string.replaceAll("\\sbr\\s|\\sbr$", "<br />");
Run Code Online (Sandbox Code Playgroud)
我的正则表达式应该找到'空白''b''r''空白'或''空格''b''r''行尾'
但它错过了我的字符串中的最后一个"br"
"hello world. it's cold out brrrrrr!<br />br"
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么??TKS!