モデルの作成は 先頭大文字の単数形で作成します。
モデルの作成とカラムの追加
【顧客用】
$ rails g devise Customer
【管理者用】
$ rails g devise Admin
rails db:migrate
Deviseというユーザー認証システム用のCustomerモデルが生成されます。モデルファイル、ビューファイル、データベースマイグレーションなど、Deviseを使うために必要なファイルが自動的に作成されます。
cusutomers (顧客)ファイル
create_table :customers do |t|
t.string :last_name, null: false
t.string :first_name, null: false
t.string :kana_last_name, null: false
t.string :kana_first_name, null: false
t.string :phone_number, null: false
t.string :post_code, null: false
t.string :address, null: false
t.booltime :is_deleted, null: false, default: false
t.datetime :created_at, null: false
t.datetime :updatad_at, null: false
admin (管理者)ファイル
t.datetime :created_at, null: false
t.datetime :updatad_at, null: false
oders (注文)ファイル
rails g model Oder
create_table :orders do |t|
t.integer :customer_id, null: false
t.integer :payment, null: false
t.string :name, null: false
t.string :postcode, null: false
t.string :address, null: false
t.integer :order_status, null: false
t.float :shipping_fee, null: false
t.timestamps
end
order_datails(注文詳細)ファイル
rails g model OrderDatail
create_table :order_datails do |t|
t.integer :order_id, null: false
t.integer :item_id, null: false
t.integer :quantity, null: false
t.float :buy_price, null: false
t.integer :production_status, null: false
t.timestamps
end
itams(商品)ファイル
rails g modal Item
create_table :items do |t|
t.string :name, null: false
t.text :description, null: false
t.integer :price, null: false
t.boolean :is_active, null: false, default: true
t.timestamps
cart_items(カート内商品)ファイル
rails g modal CartItems
create_table :items do |t|
t.string :name, null: false
t.text :description, null: false
t.integer :price, null: false
t.boolean :is_active, null: false, default: true
t.timestamps
end
addresses(配送先)ファイル
rails g modal Addresse
create_table :addresses do |t|
t.string :postcode, null: false
t.string :address, null: false
t.string :name, null: false
t.timestamps
end
genres (ジャンル)ファイル
rails g modal Genre
def change
create_table :genres do |t|
t.string :name, null: false
t.timestamps
end
追加したらmigrateを行う
rails db:migrate
補足
updated_at と updated_atは、
t.timestampsによって自動的に作成されます。
t.datetime "created_at", precision: 6, null: false
t.datetime "updated_at", precision: 6, null: false
参考