2017-09-12 6 views
1

を繰り返す:は、アレイを実装し、私は私が使用したい、このRubyのコードを持って

if args[:remove_existing_trxs] == 'true' 
    Acquirer.delete_all 
    Company.delete_all 
    Currency.delete_all 
    AdminUser.delete_all 
    BaseReseller.delete_all 
    Terminal.delete_all 
    Contract.delete_all 
    Merchant.delete_all 
    MerchantUser.delete_all 
    PaymentTransaction.delete_all 
    end 

は、どのように私は配列として定義して繰り返すことができますか?

+3

このシナリオと使用上のより適切で(定義されたモデル協会との)各モデルにdependency_trueはないでしょう1つのdelete_all依存関係を削除するには? – TheMouseMan

+2

なぜ 'ruby-on-rails-3'と' ruby​​-on-rails-4'であなたの質問にタグを付けましたか?両方のバージョンをターゲットにしていますか? – Stefan

答えて

4

これは何ですか?

[Model1, Model2].each do |model| 
    model.public_send(:delete_all) 
end 

またはSymbol#to_procを使用して

[Model1, Model2].each(&:delete_all) 
2

これを試してみる:

if args[:remove_existing_trxs] == 'true' 
    [Acquirer, Company, Currency, AdminUser, 
    BaseReseller, Terminal, Contract, Merchant, 
    MerchantUser, PaymentTransaction].each(&:destroy_all) 
    end 
関連する問題