MySQLとRuby on Railsでシンプルな掲示板機能を作成する方法

以下の手順に沿って、MySQL と Ruby on Rails を使用した簡単な掲示板機能を開発できます。

  1. RubyとRuby on Railsのインストールと設定:
  1. RubyとRubyGemsのインストールを確認しましょう。Ruby のダウンロードとインストールは https://www.ruby-lang.org/ からできます。
  2. ターミナルを開いて、「gem install rails」コマンドでRailsフレームワークをインストールします。
  3. rails new my_forumで新しいRailsアプリケーションを作成
  4. 作成したアプリケーションディレクトリへ移動:cd my_forum
  1. データベース接続を確立する:
  1. config/database.ymlファイルを開き、MySQLデータベース接続情報を設定します。developmentとtest環境のデータベース設定を以下のように変更します。
development:
adapter: mysql2
encoding: utf8
database: my_forum_development
pool: 5
username: your_mysql_username
password: your_mysql_password
host: localhost
test:
adapter: mysql2
encoding: utf8
database: my_forum_test
pool: 5
username: your_mysql_username
password: your_mysql_password
host: localhost
  1. 掲示板関連モデルとデータベースの作成
  1. 以下のコマンドを実行してPostという名前のモデルを作成し、対応するデータベースマイグレーションファイルを生成します: rails generate model Post title:string content:text
  2. データベースマイグレーションを実行する:rails db:migrate
  1. 提吧モデルの関連付けを設定する:
  1. app/models/post.rbファイルを開いて、以下のコードを追加します。
class Post < ApplicationRecord
has_many :comments
end
  1. コメントモデルと関連データベーステーブルの作成:
  1. 次のコマンドを実行してCommentという名前のモデルを作成し、対応するデータベースマイグレーションファイルを生成します: rails generate model Comment content:text post:references
  2. データベースマイグレーションを実行: rails db:migrate
  1. コメントモデルの関連付けを設定する:
  1. アプリのmodels/comment.rbを開いて、以下のコードを追加する。
class Comment < ApplicationRecord
belongs_to :post
end
  1. 掲示板とコメントのコントローラーとビューを作る:
  1. rails generate controller Posts index show new create でPosts と呼ばれるコントローラを作成します。
  2. rails generate controller Comments createコマンドを実行して、Commentsという名前のコントローラを作成する
  3. app/controllers/posts_controller.rb に以下のコードを追加します。
class PostsController < ApplicationController
def index
@posts = Post.all
end
def show
@post = Post.find(params[:id])
end
def new
@post = Post.new
end
def create
@post = Post.new(post_params)
if @post.save
redirect_to @post
else
render 'new'
end
end
private
def post_params
params.require(:post).permit(:title, :content)
end
end
  1. app/controllers/comments_controller.rb に以下のコードを追加します。
class CommentsController < ApplicationController
def create
@post = Post.find(params[:post_id])
@comment = @post.comments.create(comment_params)
redirect_to @post
end
private
def comment_params
params.require(:comment).permit(:content)
end
end
  1. Railsのビューテンプレート構文を参考にして、対応するビューファイルを生成してください。
  1. ルーティングの構成:
  1. config/routes.rbファイルを開いて、下記コードを追加します。
Rails.application.routes.draw do
resources :posts do
resources :comments
end
end
  1. Railsサーバの実行:
  1. Railsサーバーを起動するには、次のコマンドを実行してください: rails s
  2. http://localhost:3000/posts にアクセスして、掲示板一覧ページを表示するには

これで掲示板機能の基本的な機能が実装できたので、ニーズに合わせて機能追加やUIの改善を行ってみてください。

bannerAds