MySQL と Ruby on Rails を使用して単純な Tieba 関数を開発する方法

WBOY
リリース: 2023-09-22 08:25:02
オリジナル
1399 人が閲覧しました

如何使用MySQL和Ruby on Rails开发一个简单的贴吧功能

MySQL と Ruby on Rails を使用して単純なポストバー関数を開発する方法

MySQL は強力なデータベース管理システムとして、Web アプリケーションの開発時によく使用されます。効率的で簡潔な Web 開発フレームワークとして、Ruby on Rails は開発者の間でさらに人気があります。以下では、MySQL と Ruby on Rails を使用して簡単な Tieba 関数を開発する方法と、いくつかの具体的なコード例を紹介します。

ステップ 1: データベースを作成する

まず、Tieba 関連のデータを保存するために、MySQL に新しいデータベースを作成する必要があります。次のコマンドを使用して、MySQL コマンド ラインでデータベースを作成できます。

CREATE DATABASE bbs_development;
ログイン後にコピー

ステップ 2: Rails アプリケーションを作成する

次に、新しい Rails アプリケーションを作成する必要があります。ターミナルを開いて次のコマンドを実行します:

rails new bbs -d mysql
ログイン後にコピー

これにより、bbs という名前の新しい Rails アプリが作成され、データベースとして MySQL が使用されます。次に、アプリケーション ディレクトリを入力します。

cd bbs
ログイン後にコピー

ステップ 3: モデルとコントローラーを生成する

Rails では、ジェネレーター コマンドを使用してモデルとコントローラーをすばやく生成できます。次のコマンドを実行して、Post という名前のモデルと Posts という名前のコントローラを生成します。

rails generate model Post title:string content:text rails generate controller Posts
ログイン後にコピー

これにより、Post モデルが生成され、タイトル フィールドとコンテンツ フィールドを含む Posts テーブルがデータベースに作成されます。同時に、Tieba に関連するロジックを処理するための Posts コントローラーも生成されます。

ステップ 4: ルートを定義する

Rails では、リクエストを分散するために使用するルートをconfig/routes.rbファイルで定義する必要があります。ファイルを開いて次のコードを追加します。

Rails.application.routes.draw do resources :posts root 'posts#index' end
ログイン後にコピー

これによりルート ルートが定義され、ルート パスが Tieba ホームページであるposts#indexアクションを指します。同時に、投稿に関連するリクエストを処理するためのリソース ルートも定義されます。

ステップ 5: モデルの関連付けを定義する

app/models/post.rbファイルで、モデル間の関連付けを定義する必要があります。この単純な Tieba アプリケーションでは、投稿に複数の返信コメントを含めることができると想定しています。したがって、次のコードを追加します。

class Post < ApplicationRecord has_many :comments, dependent: :destroy end
ログイン後にコピー

これは、投稿には複数のコメントを含めることができ、投稿が削除されると、関連するコメントも自動的に削除されることを Rails に伝えます。

ステップ 6: データベース移行の生成

次のコマンドを実行してデータベース テーブルを作成します:

rails db:migrate
ログイン後にコピー

これにより、以前に生成されたモデルに基づいてデータベース テーブルが作成されます。

ステップ 7: コントローラー メソッドとビューを追加する

コントローラーでは、投稿に関連する操作を処理するためにいくつかのアクション メソッドを定義する必要があります。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
ログイン後にコピー

上記のコードでは、すべての投稿を表示するためにindexメソッドが使用されています。showメソッドは 1 つの投稿を表示するために使用され、newメソッドは新しい投稿を作成するために使用され、createメソッドは新しい投稿を保存するために使用されます。役職。同時に、許可されたパラメーターをフィルターするためのプライベート メソッドpost_paramsも定義します。

app/views/postsディレクトリに、データを表示するための対応するビュー テンプレートを作成する必要があります。必要に応じて、index.html.erbshow.html.erbnew.html.erbなどのファイルを作成し、対応する HTML コードを記述することができます。 。

ステップ 8: アプリケーションを実行する

最後のステップでは、アプリケーションを実行して効果を確認する必要があります。ターミナルで次のコマンドを実行します。

rails server
ログイン後にコピー

これにより、Rails サーバーが起動し、デフォルトのポートlocalhost:3000でアプリケーションが実行されます。ブラウザを開いてアドレスに移動し、Tieba アプリケーションのホームページを表示します。これにより、投稿の作成、表示、閲覧が可能になります。

概要

この記事では、MySQL と Ruby on Rails を使用して単純な Tieba 関数を開発する方法を紹介し、いくつかの具体的なコード例を示します。上記の手順を通じて、データベースの作成、モデルとコントローラーの生成、ルートの定義、モデルの関連付けの定義などの方法を学習できます。この簡単な例を通じて、読者が MySQL と Ruby on Rails をより適切に使用して独自の Web アプリケーションを開発できるようにするためのクイック スタート ガイドを提供します。

以上がMySQL と Ruby on Rails を使用して単純な Tieba 関数を開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!