戻る

Rails6.0


動画学習サイトの構築 Rails6.0

  (0)
2,000円

タスク3-2   プロジェクトとタスクモデル

このタスクについて


タスクの内容を一部抜粋します。
プロジェクトを購入していただくとこのタスクの内容の全てを読みやすい表示で見ることができます。
プログラムコードが色分けされて見やすくなります。
プログラムコードに行番号が付きます。
本文が色分けされて見やすくなります。
そしてこのアプリケーションのフルコードをダウンロードすることが可能になります。




プロジェクトとタスクのモデルを作成していきます。


コマンド(2つ)
rails g model Project name:string content:text price:bigint user:references


rails g model Task title:string note:text video:string header:boolean tag:bigint project:references


「db\migrate\20200802073112_create_tasks.rb」ファイルに記述を追加します。


記述追加 db\migrate\20200802073112_create_tasks.rb(7行目)
「, null: false, default: false」の記述を追加しています。
t.boolean :header, null: false, default: false



db\migrate\20200802073112_create_tasks.rb
 
class CreateTasks < ActiveRecord::Migration[6.0] 
  def change 
    create_table :tasks do |t| 
      t.string :title 
      t.text :note 
      t.string :video 
      t.boolean :header, null: false, default: false 
      t.bigint :tag 
      t.references :project, null: false, foreign_key: true 
      t.timestamps 
    end 
  end 
end 


コマンド マイグレーション適用
rails db:migrate


プロジェクトモデルにバリデーションを追加します。
「app\models\project.rb」ファイルを以下のように編集します。


記述更新 app\models\project.rb
 
class Project < ApplicationRecord 

  belongs_to :user 

  has_many :tasks 
  
  validates :name, presence: true, length: { maximum: 50 } 
  validates :price, presence: true, numericality: { only_integer: true } 
end 



タスクモデルにもバリデーションを追加します。
「app\models\task.rb」ファイルを以下のように編集します。


記述更新 app\models\task.rb
 
class Task < ApplicationRecord 

  belongs_to :project 

  validates :title, presence: true, length: { maximum: 50 } 
  validates :video, presence: true 
  validates :tag, presence: true 
  validates :project, presence: true 
end 



ユーザモデルに以下の記述を追加します。


記述追加 app\models\user.rb(3行目)
has_many :projects



この続きはプロジェクトを購入していただくことで見ることができます。
プロジェクトを購入していただくとこのタスクの内容の全てを読みやすい表示で見ることができます。
プログラムコードが色分けされて見やすくなります。
プログラムコードに行番号が付きます。
本文が色分けされて見やすくなります。
そしてプロジェクトを購入するとこのアプリケーションのフルコードをダウンロードすることができます。

まだレビューはありません。

動画学習サイトの構築 Rails6.0

2,000円

Rails6.0で作成しています。
動画で学べるサイトを構築するプロジェクトです。
プロジェクトを登録し、そのプロジェクトに動画を登録できます。
プロジェクトはクレジットカードで購入でき、購入後すぐに動画を見ることができます。
写真の複数アップロード、レビュー機能の実装、Google認証、アマゾンS3の利用方法も解説。
管理ダッシュボードtrestleの実装、Gメールの設定、 HEROKUへのデプロイ方法を解説。
質問があればメッセージを送ることができ、リアルタイムで会話表示することができます。
フルコードのダウンロード可能。

タスク数: 128