【#100DaysOfCode】Day17 「作りながら学ぶRuby入門」26章 && 【Railsチュートリアル】
ついに今日はRailsチュートリアルに突入した。
AWS Cloudさわれて感動、便利!!!
ワクワクしたわ、素直に。
Day17
「作りながら学ぶRuby入門」26章
- 各メニュー画面における静的表示と、画面遷移をプログラム化
今日のpoint
1. データベース検索の結果をHTMLに埋め込む: .erbを用いる
# 蔵書データを選択して、処理をサーバに依頼 <form method="post" action="list">
2. テーブルのデータを表示する前に、項目名を表示
# column_nameメソッドは配列を返すので、eachメソッドで順に取り出して表示 <% sth.column_names.each do |name| %> <th><%= "#{name}" %></th>
これを踏まえて以下コード。
これまでやってきたことと何も変わらない
<% # 作りながら学ぶRuby入門 26章 (済) Webサーバ側のプログラム %> <% # メニュー画面:「蔵書画面の表示」 を作成 %> <% # HTMLに、データベースからの検索結果を埋め込む: erbファイル%> <% require 'rubygems' # RubyGemsでインストールしたときには記述 %> <% require 'dbi' # DBIを使う %> <%# dbhを作成し、データベース'bookinfo_sqlite.db'に接続する %> <% dbh = DBI.connect( 'DBI:SQLite3:bookinfo_sqlite.db' ) %> <%# テーブルからデータを読み込んで結果のセットを得る %> <% sth = dbh.execute("select * from bookinfos;") %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /> <link rel="stylesheet" type="text/css" href="default.css"> <title>蔵書管理</title> </head> <body> <h1>蔵書管理</h1> <h2>蔵書データの表示</h2> <p>処理する蔵書データを選択してください| <a href="entry.erb">蔵書データの登録</a>| <a href="retrieve.erb">蔵書データの検索</a>| <a href="index.html">メニュー画面に戻る</a></p> <hr> <%# 修正データを表示する アクションはlist %> <form method="post" action="list"> <table> <%# テーブルの項目名を取り出して表の項目行を表示する %> <tr> <th>削除</th><th>修正</th> <% sth.column_names.each do |name| %> <th><%= "#{name}" %></th> <% end %> </tr> <%# select文の実行結果を1件ずつrowに取り出し、繰り返し処理する %> <% sth.each do |row| %> <tr> <%# each_with_nameメソッドで値と項目名を1件分ずつ取り出して表示する %> <% row.each_with_name do |val, name| %> <% if name == 'id' then %> <%# valueに選択したidの値の後に処理(.delete, .edit)を結合した文字列を設定する %> <td><input type="radio" name="oparation" value=<%="#{val}.delete"%> /></td> <td><input type="radio" name="oparation" value=<%="#{val}.edit"%> /></td> <% end %> <td><%= "#{val.to_s}" %></td> <% end %> </tr> <% end %> </table> <input type="submit" value="選択した処理を実行" /> <hr> </body> </html> <%# 実行結果を解放する %> <% sth.finish %> <%# データベースとの接続を終了する %> <% dbh.disconnect %>
とりあえず終了。本日のメインはこれからである。
実は Railsチュートリアルに突入した
本日のメイン 【Railsチュートリアル】
本記事での扱い
内容については、チュートリアルがわかりやすくまとまっており、
ここに書き直しても時間の無駄なので、やったことを簡単に記録していく。
今日やったこと
- Railsチュートリアルを 1〜8章までざっと読む
- 読み方(の粒度)
- これからどういうことをやりたいのかという【動作イメージを持つ】
- どんな道具を使うのか知る : 詳しい中身は飛ばす
- 何ができるようになるのかを知る
bitbucketにpushするところで詰まって、終わり
Cloud環境使うのも、Git的なバージョン管理ツール使うのも初めてで楽しい〜〜!!
commitとかmergeとか,pushとか「意味はわかるけど・・」って感じだったが、
「とりあえず使ってみた!」という精神状態まで進めて、よい。
学習について[メモ]
- 40秒で復習する
- 難しい概念は、10才の子供に説明するつもりで、たとえ話 を考える
- 相手に説明するときは、【相手の得意な分野でのたとえ話】を使うと、なお良い
最後のポイントは上司に話すときも、使えるようにしたい