Cool. Learn something new all the time. Thanks.
On Dec 26, 5:38 pm, Jonzo <[email protected]> wrote: > On another side note: > > @Ryan - You wrote: > > A more efficient way is to do this is: > @project_names = Project.all(:select => 'name').map(&:name) > > While you've made a database optimisation there, you've also used the > shorthand notation for the map function. I read somewhere that map > (&:name) is quite a bit less efficient than map{ |p| p.name } > > unfortunately I can't find the article that convinced me in the first > place... I can only find this blog with the issue mentioned in the > comments: > > http://blog.hasmanythrough.com/2006/3/7/symbol-to-proc-shorthand > > On Dec 27, 2:23 am, Sazima <[email protected]> wrote: > > > Zhao, > > > I think the most straightforward way is using columns.map > > (Project.columns.map { |c| puts c.name }), just like the inspect > > method of ActiveRecord: > > > inspect() > > > Returns a string like ‘Post id:integer, title:string, body:text‘ > > > # File vendor/rails/activerecord/lib/active_record/base.rb, line 1348 > > 1348: def inspect > > 1349: if self == Base > > 1350: super > > 1351: elsif abstract_class? > > 1352: "#{super}(abstract)" > > 1353: elsif table_exists? > > 1354: attr_list = columns.map { |c| "#{c.name}: #{c.type}" } > > * ', ' > > 1355: "#{super}(#{attr_list})" > > 1356: else > > 1357: "#{super}(Table doesn't exist)" > > 1358: end > > 1359: end > > > Cheers, Sazima > > > On Dec 26, 3:27 am, Mohit Sindhwani <[email protected]> wrote: > > > > Zhao Yi wrote: > > > > Ryan wrote: > > > > >> I think it's been around since Rails 2.1 > > > > >> Project.first > > > >> Project.last > > > >> Project.all > > > > >> all work. > > > > > I think the first last and all refers to rows. I want to select columns. > > > > If I'm not wrong, relational algebra doesn't identify a sequence between > > > the elements of a row, i.e., I don't think it gives you the ability to > > > select a column specifically. That said, you could probe for the schema > > > and get the elements using that - something like how the dynamic > > > scaffold used to work in earlier Rails. > > > > Cheers, > > > Mohit. > > > 12/26/2008 | 1:27 PM. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

