2013-01-03 13 views
7

Dies ist ein Beispiel für einen Eintrag in meiner Datenbank (.each, .collect, .map ...?):Ruby on Rails Active Record-Abfrage

Market id: 1, name: "Independence Park (Independently Run Farmers Market...", address: "3945 N. Springfield Ave., Chicago, IL", zipcode: "60618", created_at: "2013-01-01 21:22:24", updated_at: "2013-01-01 21:22:24" 

Alles, was ich tun möchte, ist die Liste 43 Postleitzahlen von allen Einträgen in meiner Datenbank. Warum funktionieren diese Abfragen nicht?

  1. Market.all.each { |m| m.zipcode }
  2. Market.all.zipcode
    • m = Market.all
    • m.each{ |m| m.zipcode }

Dank!

+0

was ist die Beziehung ist Postleitzahl ist Feld des Marktes oder in Bezug – Amar

+1

Ich fand es heraus ... Market.pluck (: Postleitzahl) – user1946151

Antwort

21

Wenn alles, was Sie wollen eine Reihe von Postleitzahlen ist, würde ich vorschlagen, dies zu versuchen:

Market.pluck(:zipcode) 
3

könnten Sie auch Folgendes tun, ist es eine Reihe von zipcodes zurückgibt:

Market.all.map(&:zipcode) 

Verwenden Sie Benchmark, um festzustellen, welche besser ist.

+2

Dies wird möglicherweise essen Lasten von RAM. – srecnig