تواجه مشكلة في البدء مع روبي على القضبان
-
13-09-2019 - |
سؤال
أتساءل ما إذا كان شخص ما يمكنه معالجة بعض القضايا التي أواجهها؟ أقوم بإنشاء تطبيق Rails:
rails myapp -d mysql
cd myapp
haml --rails .
rake db:create:all
ثم أريد استخدام عميل MySQL لإنشاء جداول. دعنا نقول المستخدمين والعملاء. العميل هو أيضا مستخدم حتى يكون لديك مخطط مثل هذا:
users
----------------
id int, not null, primary key, auto increment
first_name varchar(50) not null
last_name varchar(50) not null
email varchar(50) not null unique
password varchar(50) not null
created_at datetime not null
updated_at datetime not null
customers
----------------
id int, not null, primary key, auto increment
user_id int, unique
-- some other stuff that is customer specific
ما هي أوامر Script القضبان التي أحتاج إلى الركض للحصول عليها للحصول على نموذج، وجهات النظر والوحدات التحكم التي تم إنشاؤها وإملء تماما تحت تطبيق القضبان الخاص بي؟ حاولت هذا:
ruby script/generate scaffold user
ruby script/generate scaffold customer
الذي ينشئ الملفات ولكن النماذج فارغة:
class User < ActiveRecord::Base
end
ما هي الصفقة؟ أيضا، أريد إنشاء قسم إدارة لإدارة الاشياء. أحسب أنني بحاجة إلى إضافة طرق لأولئك:
map.namespace :admin do |admin|
admin.resources :users
admin.resources :customers
end
ماذا أحتاج إلى الحصول على قسم الإدارة؟ هنا أيضا إصدارات Ruby / Gems التي أركضها:
ruby 1.8.6
rails 2.3.5 & 2.3.2 <- I'm using 2.3.2 because haml
wasn't working (or some other plugin) with 2.3.5
haml 2.2.15
rspec 1.2.9 <- I saw from another thread that I might need
this when creating an adminstration section (rspec_controller etc)
المحلول
من المفترض أن تكون النماذج فارغة افتراضيا لأن مخطط قاعدة البيانات يتم حفظها في schema.rb
ملف وإدارته باستخدام الهجرات.
من إجابتك، أفهم أنك تبحث عن محلول مسبق لكتابة بضعة تكوينات واحصل على كل شيء، من وحدة التحكم إلى الإدارة المطبوخة لك. أنا آسف، لا تقدم لك القضبان هذه الميزة. إذا كنت تريد قسم الإدارة، فعليك بالفعل رمزا عليه.
ويشمل:
- إنشاء وجهات النظر والقوالب الخاصة بك
- خلق أفعالك
- رسم خرائط طرقك
- كتابة الاختبارات الخاصة بك
يوفر لك سقالة نقطة انطلاق فقط ولكن هذه نقطة انطلاق يجب عليك تكييفها وتوسيع احتياجاتك.
إذا كنت تريد أن تقوم السقالة بإنشاء وجهات نظرك التلقائية وفقا لجدول قاعدة البيانات الخاصة بك، فيمكنك اجتياز الحجج إلى أداة سطر الأوامر
ruby script/generate scaffold user name:string age:integer
ولكن إذا كنت ترغب في إضافة حقل جديد لاحقا، فسيتعين عليك كتابة ترحيل جديد وتحرير آرائه / الإجراءات وفقا لذلك.
مزيد من المعلومات متوفرة في القضبان خطوط إرشاد و ويكي.
نصائح أخرى
تم تصميم القضبان لاستقلال قاعدة البيانات مع كل "الإنشاء" التي تم ذلك عبر الترحيل الموجودة في db/migrate
.
لإنشاء جداول DB المناسبة، يمكنك تشغيلها ببساطة rake db:migrate
وسيتم تنفيذ أي هجرة لإنشاء جداول DB الضرورية.
مكان جيد لمزيد من المعلومات هو أدلة القضبان التي لديها تطبيق مثال للعمل من خلال.