SORU
20 HAZİRAN 2012, ÇARŞAMBA


Geçerli Ruby yığın izlemesi bir istisna yükselterek olmadan

Raylar 3 uygulaması mevcut geri iz (stacktrace) oturum istiyorumolmadanbir istisna meydana gelen. Nasıl herhangi bir fikir?

Bunu neden istiyorum? Çalışıyorum izleme çağıran yapılır zaman Raylar görünüyor için bir şablon böylece yol yolculuğu bir parçası işlemini geçersiz kılmak için (çünkü değiştirmek istiyorum görünüme yol için belirli bir alt denetleyicisinin benim).

Dosyasından çağırmak istiyorum: gems\actionpack-3.2.3\lib\action_dispatch\middleware\templates\rescues\missing_template.erb. Bu en iyi uygulama olmadığını biliyorum, ama şablonları için arama oluşur nereden yığın aşağı olduğunu biliyorum.

CEVAP
2 Temmuz 2012, PAZARTESİ


Kernel#caller kullanabilirsiniz:

# /tmp/caller.rb

def foo 
  puts caller # Kernel#caller returns an array of strings
end

def bar 
  foo 
end

def baz 
  bar 
end

baz

Çıkış:

caller.rb:8:in `bar'
caller.rb:12:in `baz'
caller.rb:15:in `<main>'

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS North America

    ASUS North A

    12 AĞUSTOS 2008
  • FrankJavCee

    FrankJavCee

    29 Kasım 2008
  • TantalizingTrance

    TantalizingT

    15 ŞUBAT 2009