create_translation_table! メソッドの使い方を教えてください。:null => false、:default => "abc" ??? などの追加オプションを使用した globalize2 の
質問する
753 次
2 に答える
0
次のようなものを試してください
Post.create_translation_table! :title => :string, :text => :text, {:null=>false, :default=>"abc"}
于 2010-05-06T11:08:36.470 に答える
0
現在のバージョンの globalize2 のメソッド定義は次のとおりです。
def create_translation_table!(fields)
translated_attribute_names.each do |f|
raise MigrationMissingTranslatedField, "Missing translated field #{f}" unless fields[f]
end
fields.each do |name, type|
if translated_attribute_names.include?(name) && ![:string, :text].include?(type)
raise BadMigrationFieldType, "Bad field type for #{name}, should be :string or :text"
end
end
self.connection.create_table(translation_table_name) do |t|
t.references table_name.sub(/^#{table_name_prefix}/, "").singularize
t.string :locale
fields.each do |name, type|
t.column name, type
end
t.timestamps
end
self.connection.add_index(
translation_table_name,
"#{table_name.sub(/^#{table_name_prefix}/, "").singularize}_id",
:name => translation_index_name
)
end
ご覧のとおり、t.column
宣言に渡される 3 番目のパラメーターはありません。したがって、globalize2 はパッチなしではこれをサポートしません。
私の提案は、移行を手動で作成することです。
于 2010-05-06T17:40:03.723 に答える