Getting model column names

Hello,

I am writing a RoR application that connects to a couchDB database using
couchrest_model.

The definition of my model is the following one:

class BdsDataAuthor < CouchRest::Model::Base
property :id, Integer
property :first_name, String
property :last_name, String
end

I would like to be able to get the list of the model columns, e.g., the
result of
BdsDataAuthor.columns would be [id, first_name, last_name]

Is it possible? I saw that active_record provides this kind of method
(column_names), but since I am not using active_record…

A solution that I tried is to create a method in the model class (it
works but its not the “best” solution…):

def getColumns
columns = Array.new
columns << “id”
columns << “first_name”
columns << “last_name”
end

Any idea/suggestion to solve this problem?

Thank you

columns(table_name, name = nil) public

Returns an array of
Columnhttp://apidock.com/rails/ActiveRecord/ConnectionAdapters/Column
objects
for the table specified by table_name. See the concrete implementation
for
details on the expected parameter values.

Try this.

On Mon, May 21, 2012 at 3:02 AM, Paulo C.
[email protected]wrote:

property :last_name, String
A solution that I tried is to create a method in the model class (it

[email protected].
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.


Atenciosamente,
Guilherme Pereira Dutra,
Fone: (34) 8407-0109

Ah sorry, I didn’t see that you aren’t using Active Record…

On Mon, May 21, 2012 at 8:59 AM, Guilherme Dutra
[email protected]wrote:

property :last_name, String
A solution that I tried is to create a method in the model class (it

[email protected].


Atenciosamente,
Guilherme Pereira Dutra,
Fone: (34) 8407-0109

On Monday, 21 May 2012 01:02:43 UTC-5, Ruby-Forum.com User wrote:

property :first_name, String

Any idea/suggestion to solve this problem?

I haven’t used CouchRest, but a quick skim of this:

seems to indicate that what you’re looking for could be accomplished
with:

BdsDataAuthor.properties_by_name.keys

–Matt J.

Thanks for your answer.

I will try the properties_with_values method to see if it returns what I
want.

Best regards

Matt J. wrote in post #1061503:

On Monday, 21 May 2012 01:02:43 UTC-5, Ruby-Forum.com User wrote:

property :first_name, String

Any idea/suggestion to solve this problem?

I haven’t used CouchRest, but a quick skim of this:

seems to indicate that what you’re looking for could be accomplished
with:

BdsDataAuthor.properties_by_name.keys

–Matt J.