SORU
28 Temmuz 2009, Salı


Tümünü sil tablodan her şeyi (Activerecord)

Ama eğer tüm mesajlar, yorumlar, bloglar, vb silmek için ne yapmalıyım? Post.delete_all tüm mesajları silmek için yapabilirim. I. e., tüm modeller üzerinde yineleme ve delete_all yöntemi çalıştırabilirim?

CEVAP
28 Temmuz 2009, Salı


rake db:reset 

Göçler sizin tablo yaratıyor.

Yorum önerdiği gibi, bunu yapmanın daha hızlı bir yolu (ama yeni bir komisyon eklemek zorunda görevi):

namespace :db do
  desc "Truncate all tables"
  task :truncate => :environment do
    conn = ActiveRecord::Base.connection
    tables = conn.execute("show tables").map { |r| r[0] }
    tables.delete "schema_migrations"
    tables.each { |t| conn.execute("TRUNCATE #{t}") }
  end
end

Yanıt kopyalanır: answer on SO.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caina Mondo Zine

    Caina Mondo

    13 EKİM 2007
  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012
  • midomansour

    midomansour

    19 EYLÜL 2009