2014-05-20 23 views
14

बिना रेल और PostgreSQL, आदेश रुक जाता है के साथ एक मॉडल उत्पन्न करने की कोशिश कर:जब इस आदेश का उपयोग करते समय त्रुटि

rails generate model Event name:string

कुछ नहीं होता है, और मैं करने के लिए Ctrl + C की है।

संस्करणों मैं उपयोग कर रहा हूँ कर रहे हैं:

  • रूबी 2.1.1p76
  • रेल 4.1.0
  • PostgreSQL 9.3.4
  • मैक ओएस एक्स 10.9.3

मैंने सत्यापित किया है कि पोस्टग्रेस काम कर रहा है और मैं इसे psql easyEventTracker_development चलाकर कनेक्ट कर सकता हूं। मैं सेटअप rails new easyEventTracker -d postgresql

चलाते समय rake db:create चलाकर मेरे रेल परियोजना, मैं निम्न संदेश मिलता है:

easyEventTracker_development पहले से मौजूद है
easyEventTracker_test पहले से मौजूद है database.yml फ़ाइल के

सामग्री:

default: &default 
    adapter: postgresql 
    encoding: unicode 
    pool: 5 

development: 
    <<: *default 
    database: easyEventTracker_development 

test: 
    <<: *default 
    database: easyEventTracker_test 

production: 
    <<: *default 
    database: easyEventTracker_production 
    username: easyEventTracker 
    password: <%= ENV['EASYEVENTTRACKER_DATABASE_PASSWORD'] %> 

यदि मैं SQLite के साथ रेल का उपयोग कर प्रोजेक्ट सेट करता हूं, तो सबकुछ ठीक काम करता है।

+0

मुझे लगता है कि आप कोई मॉडल उत्पन्न नहीं कर सकते (इसे जांचें)। 'मैं उससे जुड़ सकता हूं' - आपने यह कैसे देखा? अपना 'Database.yml' – zishe

+1

' रेल कंसोल 'चलाने का प्रयास करें और अपने कुछ मौजूदा मॉडल तक पहुंचें, यह सत्यापित करना चाहिए कि आप PostGreSQL से जुड़े हुए हैं। – Patru

+0

मुझे लगता है कि उसके पास कोई मॉडल नहीं है (टेबल)। – zishe

उत्तर

64

में के रूप में उपयोगकर्ता नाम के रूप स्कीमा नाम प्रदान करने की आवश्यकता होगी के बिना काम करने के लिए अपने विकास स्कीमा की स्थापना वहाँ जो जनरेटर लटका का कारण बनता है रेल 4.1 के साथ वसंत में एक बग है ।

spring stop चलाने का प्रयास करें और जनरेटर को फिर से चलाएं।

+1

क्या आप कृपया इस मुद्दे पर यूआरएल पेस्ट कर सकते हैं? धन्यवाद – tvdeyen

+0

महान उत्तर, क्या मुझे सफल प्रवासन के बाद फिर से वसंत शुरू करना चाहिए? –

+1

रेल 5-अल्फा के साथ ही। बहुत बढ़िया जवाब! – errata

0

ऐसा प्रतीत होता है कि आप अपने विकास और परीक्षण डेटाबेस के लिए username और password प्रदान नहीं कर रहे हैं। आप

rails dbconsole 

जो एक डेटाबेस विशिष्ट एसक्यूएल-शीघ्र साख आप database.yml में प्रदान का उपयोग करता है प्रदान करेगा का उपयोग कर आप अपने डेटाबेस से कनेक्ट करने में सक्षम हैं सत्यापित करना चाहिए। जबकि sqlite3 एक फ़ाइल आधारित प्रोग्राम है जिसे लॉगिन प्रमाण-पत्रों की आवश्यकता नहीं है, तो आपको विकास मोड के लिए भी आवश्यकता होगी यदि आप एक डेटाबेस का उपयोग करते हैं जो विभिन्न स्कीमा का उपयोग करने में सक्षम है।

आप एक पासवर्ड आप अभी भी

username: easyEventTracker_development 
0

वही बात मेरे साथ हुई और मैं वसंत का उपयोग नहीं कर रहा था इसलिए समाधान काम नहीं कर पाया।

मैंने अभी कंसोल छोड़ दिया, इसे फिर से खोल दिया, वही आदेश चलाया और यह काम किया।

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