2010-03-18 13 views
18

मैंने विकास में शुरुआती गलती की, और मेरे मॉडलों में से एक को बहुवचन संज्ञा (UsersUser के बजाय) नाम दिया। क्या इसका नाम बदलने और संबंधित नियंत्रक का एक आसान तरीका है (इसे script/generate तरीके से उत्पन्न करने के समान)?मॉडल का नाम बदलने के लिए

उत्तर

6

अद्यतन: इस स्क्रिप्ट अब समर्थित नहीं है

एक स्क्रिप्ट मौजूद है कि आप के लिए काम करेगा:

http://github.com/hiroshi/script-refactor

+1

नाम बदलना होगा! ऐसा कुछ नहीं जो मुझे अक्सर चाहिए, लेकिन यह जानना अच्छा है कि यह वहां है। – stephenmurdoch

+0

मैं इसे बुकमार्क कर रहा हूं, क्योंकि यह उन्हें पूर्ववत करने के लिए एक दर्द है। ज्यादातर समय मैं सिर्फ पीछे हटाना और पुनर्जन्म देता हूं। – wesgarrison

+2

क्या रेलों के साथ इसका उपयोग करना संभव है? – mirelon

-1

कोई आसान तरीका है कि मैं के बारे में पता, http://railsforum.com/viewtopic.php?id=32693

मुझे लगता है कि तुम सिर्फ मैन्युअल

भी अपने सभी परीक्षण का नाम बदलने के forgt नहीं है ....

4

यह करने के लिए मिल गया है आपको अपने सभी एप्लिकेशन में मैन्युअल रूप से Users पर सभी संदर्भों को बदलना होगा।

अपने आप में नाम बदलने के लिए, यह नहीं है बहुत मुश्किल: फ़ाइल का नाम बदलें और निम्न माइग्रेशन जोड़ें:

class RenameUsers < ActiveRecord::Migration 
    def self.up 
     rename_table :users, :user 
    end 
    def self.down 
     rename_table :user, :users 
    end 
end 
+0

तालिका नाम, बहुवचन होना चाहिए इस प्रकार "उन" है ठीक। – kouak

+0

सही! लेकिन अपने मॉडल में, तालिका शायद उपयोगकर्ताओं का नाम नहीं है, इसलिए उसे –

4

आप अपनी फ़ाइल, अपने परीक्षण/कल्पना फ़ाइल और इस मॉडल के सभी संदर्भ नाम बदलने की आवश्यकता ।

आपको तालिका का नाम बदलने के लिए माइग्रेशन करने की भी आवश्यकता है।

संबंधित मुद्दे