0

いくつかの計算列を含むレガシー データベースに対して SQL Server で実行されている Rails 3 アプリケーションがあります。新しいレコードを保存しようとすると、「列 "ContractPendingDays" は計算列であるか、UNION 演算子の結果であるため、変更できません」というエラーが表示されます

私はこの列を更新していません.dbに新しいレコードを追加するときにactiverecordが書き込もうとする列の1つのようです。

この動作を止める方法はありますか? スキーマ rb を変更しようとさえしましたが、それは役に立ちませんでした。(そして、データベースを変更するたびにそれをしなければならないので、とにかく最適ではありません。)

activerecord が列に書き込もうとしないように、列を更新不可としてマークする方法はありますか?

4

1 に答える 1

1

ここで答えが見つかりました:

アクティブ レコード INSERT の NULL を防止しますか?

(before_create フィルターで attributes.delete を使用)

于 2012-12-12T20:30:04.223 に答える