/ / मैं पिछले माइग्रेशन के ऊपर या नीचे विधियों का पुन: उपयोग कैसे करूं - रूबी-ऑन-रेल, माइग्रेशन

मैं पिछले माइग्रेशन के ऊपर या नीचे विधियों का पुन: उपयोग कैसे करूं - रूबी-ऑन-रेल, माइग्रेशन

मैंने अपना खुद का यूजर क्लास बनाया था औरस्क्रैच से प्रमाणीकरण लेकिन हाल ही में है इसे स्क्रैप करने और डेविस मणि का उपयोग शुरू करने का फैसला किया। तो इससे पहले कि मैं डेविस माइग्रेशन का लाभ उठाता हूं, मुझे माइग्रेशन बनाने की आवश्यकता है मेरी उपयोगकर्ता तालिका को मारने के लिए। "आसान", मैंने सोचा, "मैं बस नीचे की विधि का उपयोग करूंगा माइग्रेशन जिसने मेरी उपयोगकर्ता तालिका बनाई "। लेकिन मैं अपने जीवन के लिए नहीं कर सकता एक नए प्रवासन से संदर्भित करने के लिए कैसे काम करें। विचार?

उत्तर:

जवाब के लिए 0 № 1

यदि आपके उपयोगकर्ता माइग्रेशन में उपयोगकर्ता तालिका को छोड़ने के बाहर कुछ भी है, तो मुझे यकीन नहीं है, लेकिन आप devise के माइग्रेशन को संपादित कर सकते हैं और बल = सही विकल्प जोड़ सकते हैं।

class DeviseCreateUsers < ActiveRecord::Migration
def self.up
create_table(:users, :force => true) do |t|
...
end
end
end

इससे ऐसा हो जाएगा कि यदि आपकी उपयोगकर्ता तालिका मौजूद है, तो इसे "हाथ से पहले गिरा दिया जाएगा।


जवाब के लिए 0 № 2

आप इसे मैन्युअल रूप से छोड़ सकते हैं:

class DropUsers < ActiveRecord::Migration
def self.up
drop_table :users
end
def self.down
raise ActiveRecord::IrreversibleMigration
end
end