Я хочу сделать мою задачу db:seed
более динамичной, позволяя создавать или обновлять определенные записи в моем приложении (или вообще ничего) на основе значений в db/seeds.rb
и текущего состояниябаза данныхЯ также хочу упростить функции, которые выполняют эту логику.
Я бы хотел избежать этого:
def create_or_update_config(key, value)
...
if config_entry.value != value
config_entry.value
end
if config_entry.changed?
config_entry.save
end
...
end
И вместо этого есть что-то упрощенное:
def create_or_update_config(key, value)
...
config_entry.value = value
if config_entry.changed?
config_entry.save
end
...
end
Достаточно ли умен ActiveRecord, чтобы знать, изменились ли значения атрибутов дажеесли они были установлены (с тем же значением)?