0

I have a rails app and want to add some default text to a field in my database. My schema looks like this:

t.text     "message_default", :default => "Thank you"

But I want to add some variable to the default:

t.text     "message_default", :default => "Thank you Fred"

So something like

t.text     "message_default", :default => "Thank you #{self.client.name}"

I know I can do this with a call_back but I thought it might be quicker (if possible) to add it to the migration as a default (pretty sure it's not possible but I thought I'd ask).

4

3 に答える 3

0

変数を使用して移行にデフォルト値を追加する場合は、変数を定義する必要があります

構成/初期化子

変数に何らかのロジックが必要な場合は、特定の初期化.rbファイルにアクションを記述することもできます

イニシャライザで変数を定義することにより、移行ファイルでアクセスできます。

それが役立つことを願っています...

于 2013-10-16T06:34:58.620 に答える
0

before_createこの問題を解決するには、call_back を使用することをお勧めします

before_create :set_default

def set_default
self.message_default = "ありがとう #{self.client.name}"
end

私はそれがあなたのために完全に使用すると思いますか?

于 2013-10-16T11:05:22.557 に答える