2013-03-02 17 views
10

Son zamanlarda, better_errors gemini kullanıyorum ve canlı kabuk yeteneklerini (temelde görünümünüze yerleştirilmiş bir Rails konsolu) olağanüstü kullanışlı buluyorum. Bir hatam olmadığında bile hata ayıklama/tanılama amacıyla kullanabileceğim bu tür bir canlı kabuktan erişime sahip olmayı çok isterim. Bu, uygulama denetleyicime yerleştirmek ve yönetici erişimini kısıtlamak için harika bir şey olurdu, böylece bir hazırlama veya prod sunucu ortamında kullanabilseydim.Canlı bir Rails konsolu bir bakışta gömme

Başka bir benzer araç var mı, belki de canlı kabuğu daha iyi bir hale getirmenin bir yolu var mı?

+0

Kodu gördünüz mü? https://github.com/charliesome/better_errors – mathieugagne

+0

Sanırım muhtemelen 'repl' kısmı. – mathieugagne

cevap

2

pry'a bir göz attınız mı? Teknik olarak tarayıcıda bir konsol açtığı better_errors gibi değil, aynı şekilde işlev görüyor. Temel olarak, kodunuzda, o anda istediğiniz anda ne istediğinizi çalıştırmanıza izin veren bir ara nokta oluşturmak için, görünümünüzde bile kodunuzun herhangi bir yerine binding.pry ekleyin.

Bir alternatif olarak bunu http://railscasts.com/episodes/280-pry-with-rails

nasıl kullanılacağına dair bir railscast de var, sadece kodunda bu noktada better_errors sayfası sunulacaktır kodunuzda herhangi bir yerde bir hata oluşturması gerekir.

Sadece konsolun açılması dışında, Staging/Prodüksiyon'da bunu yapmanın hiçbir yolu olmadığından emin değilim. Muhtemelen Üretim üzerindeki kodunuza yine de bu seviyede erişim vermek istemezsiniz. Bu noktada bu sayfaya erişebilen herkes veritabanına tam erişime sahiptir. Geliştiricilerle sınırlı olsa bile, potansiyel bir güvenlik riski gibi görünüyor.

+0

Evet, her zaman gözetlemek için kullanıyorum ve her zaman sadece hataları düzeltmek için daha iyi hatalar atarım. Güvenlik riskleri konusunda kesinlikle haklısınız, ancak uygulamaya bağlı olarak (örneğin şirket içi uygulama) bu kadar kötü bir şey olmayabilir. –

İlgili konular