SORU
29 AĞUSTOS 2012, ÇARŞAMBA


Koparmak arasındaki fark ve Raylar toplamak nedir?

İşte iki örnek kodları.

İlk collect ile ilgili

User.first.gifts.collect(&:id)

pluck ile

User.first.gifts.pluck(:id)

Performans ya da başka bir şey ikisi arasında herhangi bir fark var mı?

CEVAP
29 AĞUSTOS 2012, ÇARŞAMBA


pluck db seviyesindedir. Sadece belirli bir alanı sorgular. See this.

Ne zaman:

 User.first.gifts.collect(&:id)

Tüm alanları dolu olan nesneler var ve sadece yöntemi id sayesinde Sayısız dayalı.

Yani:

  • eğersadeceRaylaridskullanın 4. id: User.first.gifts.ids

  • eğersadecegereken Raylarpluckkullanım 4, bazı alanlar: User.first.gifts.pluck(:id, :name, ...)

  • eğersadecegereken Raylar ile bir alanı 3, 15**kullanın: User.first.gifts.pluck(:id)

  • eğer ihtiyacınız varsatümalanları, collect kullanın

  • eğer ihtiyacınız varsa Raylar 4, hala bazı alanları pluck kullanın

  • eğer ihtiyacınız varsa bazı Raylar 3, 19**collect ile alanlar

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Marina and The Diamonds

    Marina and T

    8 Temmuz 2008
  • NCIX Tech Tips

    NCIX Tech Ti

    2 Ocak 2007
  • Willie D.

    Willie D.

    16 Aralık 2006