0

この問題があります。

PostgreSql db からデータを読み取るアプリケーションを実装する必要があります。データベースを変更することはできません。これを読み取ることしかできません。

いくつかの列を持つテーブルがありますが、そのうちの 1 つは「更新」という名前です。

このテーブルからすべてのレコードを読み取って画面に出力しようとすると、アプリケーションから次のように通知されます。

"ActiveRecord::HomeController#index の DangerousAttributeError"

「更新はActiveRecordによって定義されています」

アプリケーション/モデルの列の名前を変更するにはどうすればよいですか? (データベースを変更することはできません) この問題を解決するためのより良い解決策は何ですか?

4

1 に答える 1

0

rails の仮想属性を使用できます。

class User < ActiveRecord::Base
  def full_name
    [first_name, last_name].join(' ')
  end

  def full_name=(name)
    split = name.split(' ', 2)
    self.first_name = split.first
    self.last_name = split.last
  end
end

次に、full_name をモデル属性として使用できます。

于 2013-02-01T16:49:25.537 に答える