Ruby中有没有办法在方法中找到调用方法名?
例如:
class Test
def self.foo
Fooz.bar
end
end
class Fooz
def self.bar
# get Test.foo or foo
end
end
Run Code Online (Sandbox Code Playgroud) 你知道一个漂亮的ruby方法来查找散列是否有某些键?
h = {:a => 1, :c => 3, :d => 4}
# keys to find are :a, :b or :e
Run Code Online (Sandbox Code Playgroud)
我知道我可以做一个:
h.key?(:a) || h.key?(:b) || h.key?(:e)
Run Code Online (Sandbox Code Playgroud)
但我想知道是否有更漂亮的方法来做到这一点!:)
非常感谢 !
使用以下代码:
class TestsController < ApplicationController
skip_before_filter :load_something, # how to skip these only
:load_something_else # if the request is xhr ?
def index
respond_to do |format|
format.html
format.js
end
end
end
Run Code Online (Sandbox Code Playgroud)
有没有办法在过滤器之前跳过,具体取决于请求是否是javascript调用而不更改:load_something和:load_something_else方法?
谢谢 !
我有一个方法调用整数的方法:
def print_time(time = 2.days.from_now)
puts time
end
Run Code Online (Sandbox Code Playgroud)
我尝试在控制台中似乎工作,但这段代码安全吗?我的意思是通过例子:
当方法定义时,值(2.days.from_now)是否只评估一次?
谢谢你帮我澄清一下!:)
考虑app.gradle包括以下内容:
defaultConfig {
versionName "2.1.6"
}
debug {
debuggable true
versionNameSuffix "-debug"
}
Run Code Online (Sandbox Code Playgroud)
是否可以获取没有后缀的版本名称?当使用PackageInfo pInfo = applicationContext.getPackageManager().getPackageInfo(applicationContext.getPackageName(), 0);
pInfo.versionName返回时2.1.6-debug,有一种方法只能在2.1.6不进行字符串或正则表达式匹配的情况下获得.
谢谢!
您好我正在尝试使用URI来创建一个uri,但似乎不接受括号([]):
uri = URI.parse("http://example.com")
uri.path = URI.escape("/test[1].png")
URI::InvalidComponentError: bad component(expected absolute path component): /test[1].png
from /Users/something/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/uri/generic.rb:823:in `check_path'
Run Code Online (Sandbox Code Playgroud)
不知道该怎么办?我应该不使用URI,最后只是逃避uri?