SORU
8 ŞUBAT 2010, PAZARTESİ


Büyük / küçük harf duyarlı Raylar arama modeli

Ürün modeli bazı öğeleri içerir

 Product.first
 => #<Product id: 10, name: "Blue jeans" >

Şimdi başka bir veri kümesinden bazı parametreleri ürün ithal ediyorum, ama adlarının yazım tutarsızlıkları vardır. Diğer veri kümesi içinde, Blue jeans örneğin yazılması, Blue Jeans.

Ama bu yeni bir ürün, ilk neredeyse aynı yaratacak 5 ** istedim. Eğer lowercased adını bulmak ve karşılaştırmak istersem seçeneklerim neler.

Performans sorunları burada gerçekten önemli değil: sadece 100-200 ürünler vardır, ve verileri alır bir geçiş olarak çalıştırmak istiyorum.

Herhangi bir fikir?

CEVAP
8 ŞUBAT 2010, PAZARTESİ


Muhtemelen daha once burada olmak zorundasın

name = "Blue Jeans"
model = Product.where('lower(name) = ?', name.downcase).first 
model ||= Product.create(:name => name)

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MrOctopi

    MrOctopi

    6 Aralık 2010
  • Phlearn Photoshop and Photography Tutorials

    Phlearn Phot

    11 EKİM 2011
  • psidot

    psidot

    2 Kasım 2006