2009-08-27 19 views
6

Son bir proje için, aşağıdaki gibi bir kodla çift görüşüm vardı: Array.count neden dev modunda değil, üretimde kullanılabilir?

<% if @users.count == 0 %> 

Bu, geliştirme modunda mükemmel çalıştı ... Ürünü prod moduna geçirdim ve sayımın geçerli olmadığını söyleyerek patladı Array yöntemi. Bunun yerine Array # uzunluğunu kullanmak için her örneği değiştirdim ve çalışıyor gibi görünüyor.

1) Davranıştaki bu farklılığın sebebi nedir?

2) İzlemesi gereken dev ve prod modları arasında başka heyecan verici farklılıklar var mı?

MORAL: Üretim barındırma ortamınızın yerel geliştirme ortamınız olarak Ruby'nin aynı sürümünü kullandığından emin olun. :)

Teşekkürler

Tom

cevap

8

count yöntem yukarı Ruby 1.9 ve yalnızca kullanılabilir ederiz. Bu gibi problemlerden kaçınmak için sunucunuzun aynı sürümünü Ruby kullanmanızı öneririm - 1.9'da çok şey değişti.

+0

İlginç. Dev ortamımın, hosting ortamımdan farklı bir yakut sürümü çalıştırdığını düşünmedim bile. Şimdi aptalım. Bu soruyu silebilir miyim? ;) +1 – cakeforcerberus

+2

Tavsiye etmiyorum. Bir başkasının da aynı sorunu olabilir. Sadece cevabı biliyordum çünkü birkaç ay önce benzer bir sorun yaşadım. –

+0

Oldukça eminim ki bu 1,8, bir yerlerde tanıtıldı ... bu biraz ben, bir noktada, ve ben 1.9 ile çalışmıyor. –

0

omg, bluehost'un Ruby 1.8.6 ve şimdi uygulamamın yarısı çalışmıyor. Çoğunlukla bu sorun nedeniyle, sayımla.

+0

Evet, tam olarak bana olan buydu. Yerel olarak geliştirilen ve yalnızca sürüm arasındaki bu tutarsızlığı keşfetmek için bluehost'a yüklendi. Acı verici. – cakeforcerberus

İlgili konular