ホームページ > データベース > mysql チュートリアル > MySQL と Ruby on Rails を使ったシンプルなブログ管理システムの開発方法

MySQL と Ruby on Rails を使ったシンプルなブログ管理システムの開発方法

王林
リリース: 2023-09-20 09:57:17
オリジナル
1297 人が閲覧しました

如何使用MySQL和Ruby on Rails开发一个简单的博客管理系统

MySQL と Ruby on Rails を使用してシンプルなブログ管理システムを開発する方法

概要:
この記事では、MySQL と Ruby on Rails の使用方法を紹介します。シンプルなブログ管理システムを開発する ブログ管理システム。ブログ管理システムは、ユーザーがブログ投稿を作成、編集、管理できるようにする一般的な Web アプリケーションです。開発フレームワークとして Ruby on Rails を、データベース管理システムとして MySQL を使用します。データベースの設計、モデルの作成、コントローラーの開発、およびビューのレンダリングに焦点を当てます。具体的なコード例は記事内で説明します。

ステップ 1: 環境セットアップ
まず、Ruby on Rails と MySQL をインストールして構成する必要があります。具体的なインストール方法についてはここでは割愛しますので、操作方法については公式ドキュメントを参照してください。インストールが完了したら、コマンド ラインからインストールが成功したかどうかを確認できます。

ステップ 2: Rails アプリケーションを作成する
次のコマンドを使用して、新しい Rails アプリケーションを作成します:

1

2

rails new blog

cd blog

ログイン後にコピー

ステップ 3: データベースを構成する
config/database を開きます。 yml ファイルで、development セクションを見つけて、次のように変更します。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

default: &default

  adapter: mysql2

  encoding: utf8mb4

  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>

  username: your_username

  password: your_password

  host: localhost

 

development:

  <<: *default

  database: blog_development

 

test:

  <<: *default

  database: blog_test

 

production:

  <<: *default

  database: blog_production

  username: blog

  password: <%= ENV['BLOG_DATABASE_PASSWORD'] %>

ログイン後にコピー

your_usernameyour_password を MySQL に置き換えます。データベースのユーザー名とパスワード。

ステップ 4: データベースを作成する
次のコマンドを実行してデータベースを作成します:

1

rails db:create

ログイン後にコピー

ステップ 5: ブログ投稿のモデルとデータベース テーブルを作成する
次のコマンドを実行しますModel という名前のデータベースと Post のデータベース テーブルを作成するコマンド:

1

2

rails generate model Post title:string content:text

rails db:migrate

ログイン後にコピー

上記のコマンドは、app/models に post.rb ファイルを作成します。 ディレクトリとデータベース内に、タイトルとコンテンツの 2 つのフィールドを含む posts という名前のテーブルを作成します。

ステップ 6: ブログ コントローラーの作成
次のコマンドを実行して、Posts という名前のコントローラーを作成します:

1

rails generate controller Posts

ログイン後にコピー

上記のコマンドは app で実行されます。 /controllers ディレクトリに posts_controller.rb ファイルを作成します。

ステップ 7: ブログ コントローラーのメソッドを作成する
app/controllers/posts_controller.rb ファイルを開き、次のメソッドをクラスに追加します:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

class PostsController < ApplicationController

  before_action :set_post, only: [:show, :edit, :update, :destroy]

 

  def index

    @posts = Post.all

  end

 

  def show

  end

 

  def new

    @post = Post.new

  end

 

  def edit

  end

 

  def create

    @post = Post.new(post_params)

 

    if @post.save

      redirect_to @post, notice: 'Post was successfully created.'

    else

      render :new

    end

  end

 

  def update

    if @post.update(post_params)

      redirect_to @post, notice: 'Post was successfully updated.'

    else

      render :edit

    end

  end

 

  def destroy

    @post.destroy

    redirect_to posts_url, notice: 'Post was successfully destroyed.'

  end

 

  private

 

  def set_post

    @post = Post.find(params[:id])

  end

 

  def post_params

    params.require(:post).permit(:title, :content)

  end

end

ログイン後にコピー

上記のコードは、indexshowneweditcreate# などのブログ コントローラーのさまざまなアクションを定義します。 ##、updatedestroy。これらのアクションは、すべてのブログ投稿の表示、単一のブログ投稿の表示、新しいブログ投稿の作成、ブログ投稿の編集、ブログ投稿の作成または編集の保存、ブログ投稿の更新、およびブログ投稿の削除に使用されます。

ステップ 8: ブログ ビューを作成する


app/views/posts ディレクトリを開き、次のファイルを作成します:

  • index.html .erb : すべてのブログ投稿のリストを表示するために使用されます。
  • show.html.erb: 1 つのブログ投稿の詳細なコンテンツを表示するために使用されます。
  • new.html.erb: 新しいブログ投稿を作成するために使用されます。
  • edit.html.erb: ブログ投稿の編集に使用されます。
これは簡単な例です:

index.html.erb

1

2

3

4

5

6

7

8

<h1>Posts</h1>

 

<% @posts.each do |post| %>

  <h2><%= link_to post.title, post %></h2>

  <p><%= post.content %></p>

<% end %>

 

<p><%= link_to 'New Post', new_post_path %></p>

ログイン後にコピー

show.html.erb

1

2

3

4

5

<h1><%= @post.title %></h1>

<p><%= @post.content %></p>

 

<%= link_to 'Edit', edit_post_path(@post) %> |

<%= link_to 'Back', posts_path %>

ログイン後にコピー

new.html. erb

1

2

3

4

5

<h1>New Post</h1>

 

<%= render 'form' %>

 

<%= link_to 'Back', posts_path %>

ログイン後にコピー

edit.html.erb

1

2

3

4

5

6

<h1>Editing Post</h1>

 

<%= render 'form' %>

 

<%= link_to 'Show', @post %> |

<%= link_to 'Back', posts_path %>

ログイン後にコピー

_form.html.erb

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

<%= form_with(model: post, local: true) do |form| %>

  <% if post.errors.any? %>

    <div id="error_explanation">

      <h2><%= pluralize(post.errors.count, "error") %> prohibited this post from being saved:</h2>

 

      <ul>

        <% post.errors.full_messages.each do |message| %>

          <li><%= message %></li>

        <% end %>

      </ul>

    </div>

  <% end %>

 

  <div class="field">

    <%= form.label :title %>

    <%= form.text_field :title %>

  </div>

 

  <div class="field">

    <%= form.label :content %>

    <%= form.text_area :content %>

  </div>

 

  <div class="actions">

    <%= form.submit %>

  </div>

<% end %>

ログイン後にコピー

以上の操作を完了すると、簡易ブログ管理システムが実行できるようになります。次のコマンドを実行してサーバーを起動し、ブラウザで

http://localhost:3000/posts にアクセスします。

1

rails server

ログイン後にコピー
概要:

この記事では、MySQL を使用します。 Ruby on Railsによるシンプルなブログ管理システムを開発しました。データベースの設計、モデルの作成、コントローラーの開発、ビューのレンダリングについて説明しました。上記の手順により、シンプルなブログ管理システムを迅速に構築し、さらに拡張および最適化することができます。この記事が、MySQL と Ruby on Rails を使用した開発方法の理解に役立つことを願っています。

以上がMySQL と Ruby on Rails を使ったシンプルなブログ管理システムの開発方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
関連するチュートリアル
人気のおすすめ
最新のコース
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート