2009-05-04 7 views
84

एक छोटी वेबसाइट परियोजना के लिए रूबी पर रेल का उपयोग करना सुविधाजनक होगा जिसके लिए डेटाबेस की कोई आवश्यकता नहीं है। मुझे पता है कि मैं MySQL में एक खाली डेटाबेस बना सकता हूं और वहां से जा सकता हूं, लेकिन क्या किसी को डेटाबेस के बिना रेल चलाने के लिए बेहतर तरीका पता है?कोई डेटाबेस के साथ रेल पर रूबी को कॉन्फ़िगर कैसे करें?

धन्यवाद

उत्तर

52

टिप्पणी हटाएं environment.rb फ़ाइल में इस लाइन:

config.frameworks -= [ :active_record, :active_resource, :action_mailer] 
+2

सिर्फ Gemfile में मणि नाम से काम नहीं किया हटाने के @jspooner Gemfile – jspooner

+0

से mysql मणि को हटा दें। –

+29

आप रेल 4 में ऐसा कैसे करेंगे? –

13

आप एक डेटाबेस की जरूरत नहीं है तो आप शायद रेल की थोक की आवश्यकता नहीं है। आप काम करने के लिए एक छोटे से अधिक अनुकूलन ढांचे चाहते हैं।

Sinatra एक छोटा ढांचा है जो मूल स्थिर पृष्ठों की सेवा के लिए बहुत अच्छा है।

लेकिन यदि आप रेल here का उपयोग करने पर जोर देते हैं तो यह एक लेख है जो आपको दिखाएगा कि यह कैसे करें या here

+0

धन्यवाद - ये दोनों लिंक रेल व्यंजन विधि को संदर्भित करते हैं और डेटाबेस- कम रेल आवेदन। मैं आलसी था और अन्य ऐप्स के लिए पहले से ही सर्वर पर रेल बुनियादी ढांचे का लाभ उठाने की उम्मीद कर रहा था, लेकिन सिंतत्रा दिलचस्प लग रहा है। – RobbieCanuck

+2

सिनात्रा के लिए +1, वही है जो मैं –

+1

की तलाश में था, मैं असहमत हूं। Active.com रेल पर किसी डेटाबेस के साथ बनाया गया है क्योंकि सभी डेटा एपीआई से आता है। – jspooner

84

रेल 3 और रेल 4 के लिए:

Use -O (Capital 'O') or --skip-activerecord option to generate an application without a database.

rails new myApp -O

या

rails new myApp --skip-activerecord

यह उत्तर here


से फिर से साझा किया है रेल 5 के लिए:

Use --skip-active-record option to generate an application without a database

सूचना अतिरिक्त हाइफन '-' के रूप में पिछले रेल संस्करणों करने का विरोध किया।

rails new myApp --skip-active-record

+3

यह अभी भी रेल 4 के लिए काम करता है, मेरा मानना ​​है। – Hana

+2

हाँ, यह रेल 4 के साथ काम करता है :) - बस मान्य है। यदि आप टेस्ट यूनिट के उपयोग को मिटाना चाहते हैं: रेल नए myApp-O --skip-bundle -T –

+1

यदि आप खरोंच से शुरू कर रहे हैं तो यह निश्चित रूप से सबसे आसान तरीका है, हालांकि चेतावनी दी जाती है कि (कम से कम रेल 4.0.1 में) उस कमांड में सक्रिय और रिकॉर्ड के बीच एक '-' है। तो इसे पढ़ना चाहिए: रेल नया myApp --skip-active-record –

13

रेल 4 में जब शुरू कर एक नई परियोजना आप -O का उपयोग करें या --skip सक्रिय रिकॉर्ड

rails new my_project -O 
rails new my_project --skip-active-record 

आप पहले से ही एक परियोजना आप टिप्पणी करने की आवश्यकता होगी बनाया है, तो कर सकते हैं

require "active_record/railtie" 
config/application.rb से

और

config.active_record.migration_error = :page_load 

कॉन्फ़िगरेशन/वातावरण/विकास से।आरबी

37

एक मौजूदा रेल के लिए 4/5 परियोजना, अपने config/application.rb फ़ाइल में आप निम्न पंक्ति है:

require 'rails/all' 

(संदर्भ कि लाइन this file लोड कर रहा है के रूप में)
लोड के बजाय सभी के लिए, आपको प्रत्येक पुस्तकालय लोड करने के लिए इस प्रकार है:

# active_record is what we're not going to use it, so comment it "just in case" 
# require "active_record/railtie" 

# This is not loaded in rails/all but inside active_record so add it if 
# you want your models work as expected 
require "active_model/railtie" 
# And now the rest 
require "action_controller/railtie" 
require "action_mailer/railtie" 
require "action_view/railtie" 
require "active_job/railtie" # Only for Rails >= 4.2 
require "action_cable/engine" # Only for Rails >= 5.0 
require "active_storage/engine" # Only for Rails >= 5.2 
require "sprockets/railtie" 
require "rails/test_unit/railtie" 

टिप्पणी करने के लिए नजर रखें पता करने के लिए अपने रेल संस्करण के बारे में लोड करने के लिए क्या। फिर भी टिप्पणी निम्नलिखित लाइनों:

#config/environments/development.rb 
config.active_record.migration_error = :page_load 

#config/environments/production.rb 
config.active_record.dump_schema_after_migration = false 

#spec/rails_helper.rb 
ActiveRecord::Migration.maintain_test_schema! 

# Only for Rails >= 5.0 
#config/initializers/new_framework_defaults.rb 
Rails.application.config.active_record.belongs_to_required_by_default = true 

वैकल्पिक रूप से आप वर्ग ActiveRecord के लिए किसी भी संदर्भ हटा सकते हैं।

rm app/models/application_record.rb 
रेल 3 में
+2

रेल 5 के लिए आप 'active_job/Railtie' और 'action_cable/engine' –

+0

@IngmarasKeleras को भी जोड़ना चाहते हैं, धन्यवाद! –

+0

क्या 'dummy डीबी एडाप्टर' डेटाबेस.एमएलएल में उपयोग करने के लिए नहीं है, तो यह सिर्फ डीबी को अनदेखा कर देगा? – Chloe

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