演習課題「レビューログ:レビュー一覧画面を作成しよう」
ここでは、マンガや動画などの感想を書き込むレビューログを作っています。
右の環境には、MySQLで「mylog」というデータベースと、Sinatraを使用したWebアプリケーションの雛形が用意してあります。
このうちのreview.rbとindex.erbを修正して、レビュー一覧画面を作成してください。一覧画面の表示には、「id」と「title」を表示します。
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
#03:Sinatraでデータベースに接続する
ここでは、メモ帳のサンプルデータを一覧表示します。SinatraとActiveRecordを使って、データベースに接続して、テンプレートで表示してみましょう。
# メモ帳アプリ:メモ一覧を表示する
require 'mysql2'
require 'active_record'
require 'sinatra'
require 'sinatra/reloader'
require 'erb'
ActiveRecord::Base.configurations = YAML.load_file('database.yml')
ActiveRecord::Base.establish_connection(:development)
class Post < ActiveRecord::Base
end
get '/' do
@posts = Post.all
erb :index
end
/views/index.erb<h1>paiza memo</h1>
<table>
<tr>
<th>Id</th><th>タイトル</th>
</tr>
<% @posts.each do |post| %>
<tr>
<td><%= post.id %></td>
<td><%= post.title %></td>
</tr>
<% end %>
</table>
<p>新規メモ</p>
- [Active Record の基礎 | Rails ガイド]
https://railsguides.jp/active_record_basics.html
- [Active Record クエリインターフェイス | Rails ガイド]
https://railsguides.jp/active_record_querying.html
- [Sinatra: README (Japanese)]
http://www.sinatrarb.com/intro-ja.html