खोज…


परिचय

उपयोग: rails generate GENERATOR_NAME [args] [options]

उपलब्ध जनरेटरों को सूचीबद्ध करने के लिए rails generate उपयोग करें। उपनाम: rails g

पैरामीटर

पैरामीटर विवरण
-h / --help किसी भी जनरेटर कमांड पर मदद लें
-p / - --pretend प्रिटेंड मोड: जेनरेटर चलाएं लेकिन किसी भी फाइल को बनाएंगे या बदलेंगे नहीं
field:type 'फ़ील्ड-नेम' उस कॉलम का नाम है जिसे बनाया जाना है और 'टाइप' कॉलम का डेटा-टाइप है। field:type में 'प्रकार' के लिए संभावित मान field:type रिमार्क्स अनुभाग में दिए गए हैं।

टिप्पणियों

field:type में 'प्रकार' के लिए संभावित मान field:type हैं:

डाटा प्रकार विवरण
:string पाठ के छोटे टुकड़ों के लिए (आमतौर पर वर्ण की सीमा 255 होती है)
:text पाठ के लंबे टुकड़ों के लिए, एक पैराग्राफ की तरह
:binary छवियों, ऑडियो और वीडियो सहित डेटा संग्रहीत करना
:boolean सही या गलत मूल्यों को संग्रहीत करना
:date केवल तारीख
:time केवल समय
:datetime दिनांक और समय
:float परिशुद्धता के बिना भंडारण तैरता है
:decimal सटीक के साथ भंडारण तैरता है
:integer पूरे नंबर स्टोर करना

मॉडल उत्पन्न करता है

एक ActiveRecord मॉडल बनाने के लिए जो आपके मॉडल के लिए सही db माइग्रेशन और बॉयलरप्लेट परीक्षण फ़ाइलों को स्वचालित रूप से बनाता है, यह कमांड दर्ज करें

rails generate model NAME column_name:column_type

'NAME' मॉडल का नाम है। 'फ़ील्ड' DB तालिका में स्तंभ का नाम है और 'प्रकार' स्तंभ प्रकार (जैसे name:string या body:text ) है। समर्थित स्तंभ प्रकारों की सूची के लिए रिमार्क्स अनुभाग देखें।

विदेशी कुंजियों को सेटअप करने के लिए, belongs_to:model_name जोड़ें।

तो कहते हैं कि आप एक User मॉडल को सेटअप करना चाहते थे, जिसमें username , email और एक School , आप निम्नलिखित में टाइप करेंगे

rails generate model User username:string email:string school:belongs_to

rails g rails generate लिए आशुलिपि है। यह एक ही परिणाम का उत्पादन होगा

rails g model User username:string email:string school:belongs_to

रेल उत्पन्न प्रवासन

आप निम्न कमांड का उपयोग करके टर्मिनल से रेल माइग्रेशन फ़ाइल उत्पन्न कर सकते हैं:

rails generate migration NAME [field[:type][:index] field[:type][:index]] [options]

कमांड द्वारा समर्थित सभी विकल्पों की एक सूची के लिए, आप कमांड को किसी भी तर्क के बिना चला सकते हैं जैसे rails generate migration

उदाहरण के लिए, यदि आप users तालिका में first_name और last_name फ़ील्ड जोड़ना चाहते हैं, तो आप ऐसा कर सकते हैं:

rails generate migration AddNamesToUsers last_name:string first_name:string

रेल निम्नलिखित माइग्रेशन फ़ाइल बनाएगी:

class AddNamesToUsers < ActiveRecord::Migration[5.0]
  def change
    add_column :users, :last_name, :string
    add_column :users, :first_name, :string
  end
end

अब टर्मिनल में निम्नलिखित रन करके डेटाबेस के लिए लंबित माइग्रेशन लागू करें:

5.0
rake db:migrate
5.0
rails db:migrate

नोट: और भी कम टाइपिंग के लिए, आप generate को g साथ बदल सकते हैं।

रेल उत्पन्न पाड़

अस्वीकरण : मचान की सिफारिश नहीं की जाती है जब तक कि यह बहुत पारंपरिक CRUD एप्लिकेशन / परीक्षण के लिए न हो। यह बहुत सारी फाइलें (विचार / मॉडल / नियंत्रक) उत्पन्न कर सकता है जिनकी आपके वेब एप्लिकेशन में आवश्यकता नहीं है, इस प्रकार सिरदर्द (खराब :() हो सकता है।

मॉडल, नियंत्रक, विचार, संपत्ति और परीक्षण सहित एक नई वस्तु के लिए पूरी तरह से काम करने वाला पाड़ उत्पन्न करने के लिए, rails g scaffold कमान का उपयोग करें।

$ rails g scaffold Widget name:string price:decimal
    invoke  active_record
    create    db/migrate/20160722171221_create_widgets.rb
    create    app/models/widget.rb
    invoke    test_unit
    create      test/models/widget_test.rb
    create      test/fixtures/widgets.yml
    invoke  resource_route
     route    resources :widgets
    invoke  scaffold_controller
    create    app/controllers/widgets_controller.rb
    invoke    erb
    create      app/views/widgets
    create      app/views/widgets/index.html.erb
    create      app/views/widgets/edit.html.erb
    create      app/views/widgets/show.html.erb
    create      app/views/widgets/new.html.erb
    create      app/views/widgets/_form.html.erb
    invoke    test_unit
    create      test/controllers/widgets_controller_test.rb
    invoke    helper
    create      app/helpers/widgets_helper.rb
    invoke    jbuilder
    create      app/views/widgets/index.json.jbuilder
    create      app/views/widgets/show.json.jbuilder
    invoke  assets
    invoke    javascript
    create      app/assets/javascripts/widgets.js
    invoke    scss
    create      app/assets/stylesheets/widgets.scss

फिर आप rake db:migrate चला सकते हैं rake db:migrate डेटाबेस टेबल सेट rake db:migrate लिए rake db:migrate करें।

फिर आप http: // localhost: 3000 / विगेट्स पर जा सकते हैं और आपको एक पूरी तरह कार्यात्मक CRUD पाड़ दिखाई देगा।

रेल उत्पन्न नियंत्रक

हम rails g controller कमांड के साथ एक नया नियंत्रक बना सकते हैं।

$ bin/rails generate controller controller_name

नियंत्रक जनरेटर generate controller ControllerName action1 action2 के रूप में मापदंडों की उम्मीद कर रहा है।

निम्नलिखित नमस्ते की एक क्रिया के साथ अभिवादन नियंत्रक बनाता है।

$ bin/rails generate controller Greetings hello

आप निम्न आउटपुट देखेंगे

     create  app/controllers/greetings_controller.rb
      route  get "greetings/hello"
     invoke  erb
     create    app/views/greetings
     create    app/views/greetings/hello.html.erb
     invoke  test_unit
     create    test/controllers/greetings_controller_test.rb
     invoke  helper
     create    app/helpers/greetings_helper.rb
     invoke  assets
     invoke    coffee
     create      app/assets/javascripts/greetings.coffee
     invoke    scss
     create      app/assets/stylesheets/greetings.scss

यह निम्नलिखित उत्पन्न करता है

फ़ाइल उदाहरण
नियंत्रक फ़ाइल greetings_controller.rb
फाइल देखें hello.html.erb
कार्यात्मक परीक्षण फ़ाइल greetings_controller_test.rb
हेल्पर देखें greetings_helper.rb
जावास्क्रिप्ट फ़ाइल greetings.coffee

यह भी में प्रत्येक कार्य के लिए मार्गों जोड़ देगा routes.rb



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow