Сделка на несколько грантов - PullRequest
0 голосов
/ 11 ноября 2011

Может ли кто-нибудь помочь мне сделать поведение следующего кода одной транзакцией?

params["user"]["userroles_attributes"].each do |key, value|
  ActiveRecord::Base.connection.execute("GRANT " + params["user"]["userroles_attributes"][key.to_s]["role"] + " TO " + params["aioua"]["user_pk"])
end

1 Ответ

0 голосов
/ 11 ноября 2011

Можно обернуть все это в блок с помощью ActiveRecord::Base.transaction. Может возникнуть проблема, поскольку вы вводите команды через execute в зависимости от используемой базы данных. Документация ActiveRecord :: Transactions содержит предупреждение о MySQL.

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...