Check


プログラミングが無料で学べるYouTubeチャンネルを配信中!

RubyやPython、PHPやReactなど様々なプログラミング言語のチュートリアル動画が充実!

チャンネル登録はこちら

Ruby

【Ruby on Rails】簡単なメモアプリの作成|シンプルなデザインに画像を表示したトップページを作成

Ruby on Rails トップページの実装

動画で解説を見る



開発環境

  • Ruby:version 3.1.2
  • Ruby on Rails:version 7.0.4
  • Visual Studio Code:version 1.73.0
  • OS:Windows10

Ruby on Railsでトップページの作成手順

Ruby on RailsでWebアプリケーションを作成するうえで欠かせないのが、ユーザーが一番最初にみるトップページです。

今回はメモアプリの作成で使用した「トップページの作成」のコードを用いて解説していきます。

トップページのコントローラーの作成

まずはトップページのコントローラーを作成していきます。

Ruby on Railsでトップページのコントローラ名は「homes」とされることが多いため、今回の実装でもコントローラー名は「homes」としています。

トップページ用のtopアクションを追加しておき、before_actionでログインしている状態かを確認するメソッドが実行されるように記述しておきます。

このあたりの仕様はWebアプリケーションによって調整しましょう。

トップページのルーティングの作成

次にトップページのルーティングを作成していきます。

前回までは「root :to => 'memos#index'」としていましたが、今回はトップページを作成したので「root :to => 'homes#top'」へ変更しています。

トップページを変更したい場合は、ルーティングの「root :to => 'コントローラー名#アクション名'」を変更しましょう。

トップページの画像を準備する

次にトップページの画像を準備します。

今回は「memo_app\app\assets\images」フォルダ内に「mv.jpg」というファイル名でファイルを追加しています。

画像保存場所については、ユーザーがファイルを投稿して表示するような場合は「memo_app\public」に保存されるような処理が推奨されています。

今回はアプリケーション側で事前に準備している画像なので「memo_app\app\assets\images」フォルダ内に保存しています。

トップページのビューとレイアウトの作成

次にトップページのビューとレイアウトを作成します。

CSSのclassについては事項でご紹介します。

ポイントとしてはメインビジュアルに背景画像を使用するため、containerの中に背景画像を指定している形です。

その後のレイアウトとしては背景画像を透過するためのレイアウト「mv-imag-transparent」、その中にテキストを表示するためのレイアウト「top-container」という構成にしているところです。

また、ヘッダーのロゴにあたる部分もリンクになるように調整しておきましょう。

トップページのデザインの調整

次にトップページのデザインの調整をしていきます。

今回は「memo_app\app\assets\images」フォルダ内に画像をファイルを保存しているため、「background-image: url("mv.jpg");」で画像のURLを指定しています。

画像を保存する場所によって画像ファイルのURLは異なるため、画像の保存場所によって適切なURLを読むこむようにしておかないと画像が表示されないということになる点は注意が必要です。

メモコントローラーのリダイレクト先を修正

最後にメモコントローラーのリダイレクト先を修正しておきます。

今回、トップページを作成したので、メモの作成、メモの更新、メモの削除で指定していたリダイレクト先も整えておきます。

おわりに

Ruby on Railsでトップページの作成について解説してきましたが、いかがだったでしょうか。

ユーザーがどのようなWebサービスなのかを理解しやすくするためにも、Webアプリケーションだけに限らずトップページの作成は重要なページとなります。

是非、トップページだけに限らずユーザーにとって有益な情報となるページの作成に挑戦してみてください。

Check


プログラミングが無料で学べるYouTubeチャンネルを配信中!

RubyやPython、PHPやReactなど様々なプログラミング言語のチュートリアル動画が充実!

チャンネル登録はこちら

-Ruby