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
-~----------~----~----~----~------~----~------~--~---