Rails では、次のように単純に使用します。
MyModel.column_names
テーブルの列名にアクセスする必要がありますが、(Ruby をよりよく学ぶために) Sinatra で最初の手探りに耐えており、テーブルの列名を配列に取得する必要があります。
以前、params ハッシュを繰り返し処理して、キーと値のペアを抽出しました。
params.each do |key, value|
#manipulate keys and values
end
そして、次を使用してそれを知っています:
@mm = MyModel.new
@mm.each do ....
未定義のメソッド「各」エラーが発生します。
logger.info @mm.inspect
次のようなログを記録します。
#<MyModel @id=nil @start=nil @end=nil @yada=nil @created_at=nil @updated_at=nil @foreign_id=nil>
では、どうすれば、非常にはっきりと見える爆破された列名を配列に入れることができるでしょうか?
ありがとう...
アップデート
Datamapper プロパティで正しい方向を示してくれた Doon に感謝します。
私は最終的にプライベートメソッドcolumn_namesを作成しました:
def self.column_names
self.properties.collect {|column| column.name.to_s }
end
御馳走を働かせる