第2版Rails3.1    Rails3 初心者レッスン           by Minami.rb                          L esso n 4
このレッスンでやること一覧1. Railsで何をする?どうしてRails?2. 作ってみよう事始め3. プロジェクトとテーブル4. Railsの役割分担5. Railsのディレクトリ構成6. scaffold(デフォルト)でのURL7. リレーシ...
Lesson3の復習i18nの日本語化トップページの設定デザインfixその他(redirect_to、welcomeページ作成)
プラグインを使う プラグイン = Rubyのgem(とくにRailsで使われるもの)  何を隠そう、Railsもgemのひとつです。 プラグイン利用の基本(1) Gemfile に gem を設定   gem 利用するgem名(2) コマンド実行...
プラグインを使う ただ、、、  プラグインはとてもたくさんあります。  キビシいようですがひとつひとつ説明していけないので、自分で できるようにがんばってマニュアルを読んでいきましょう。 わりと有名な使えるプラグイン devise :ユーザー認...
Ruby/Railsに働いてもらう 言語から見たおおまかな役割分担                        HTML                                  ウィンドウ操作データの集計           データ...
Ruby/Railsに働いてもらう 今回働いてもらうもの バリデーションの設定(Railsのメソッド) 自前メソッドの追加(Rubyで書く自分のメソッド) Railsのメソッドは★の数よりは少ないので、少しずつマニュアルや 本や勉強会、はたまた...
Ruby/Railsに働いてもらう  バリデーションの設定 → app/modelsに実装  例:Workshopのnumberがダブらないようにする(1) app/models/workshop.rbに実装    validates :num...
Ruby/Railsに働いてもらう  自前メソッドの追加 → app/controllers 、app/models   どちらでも実装できることはできる   でも、controllerはあくまでブラウザとの橋渡し役      固有のメソッドは...
Ruby/Railsに働いてもらう 自前メソッドの追加 例:Workshopの参加人数の平均値をworkshops#indexに表示する Workshop全体のことなので、ここではクラスメソッドを作ります。 app/models/worksho...
Ruby/Railsに働いてもらう 自前メソッドの追加 例:Workshopの参加人数の平均値をworkshops#indexに表示する(1) app/models/workshop.rbに自前メソッドを実装   def self.person...
Ruby/Railsに働いてもらう Railsで使えるメソッド  クラスメソッド   :主に、テーブルのデータ全体にかかるもの担当  インスタンスメソッド   :主に、テーブルの個別データにかかるもの担当  ヘルパーメソッド   :主に、vie...
考えてみようユーザー認証プラグイン:deviseを設定してみよう         参考:http://www.slideshare.net/fukajun/minamirbdeviseバリデーションが必要な箇所を考えて設定してみようWorksh...
おまけ  テーブルへのカラム追加、変更、削除(1) migrationファイル作成     $ rails generate migration クラス名     e.g. rails generate migration AddColumnP...
Lesson4は、これで終わりです。     お疲れさまでした。
Upcoming SlideShare
Loading in...5
×

Rails初心者レッスン lesson4 2edition

995

Published on

Minami.rb

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
995
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Rails初心者レッスン lesson4 2edition

  1. 1. 第2版Rails3.1 Rails3 初心者レッスン by Minami.rb L esso n 4
  2. 2. このレッスンでやること一覧1. Railsで何をする?どうしてRails?2. 作ってみよう事始め3. プロジェクトとテーブル4. Railsの役割分担5. Railsのディレクトリ構成6. scaffold(デフォルト)でのURL7. リレーションを考える8. 日本語対応9. 見た目をキレイに10. プラグインを使う11. ちょっとRubyに働いてもらう12. herokuに公開しよう
  3. 3. Lesson3の復習i18nの日本語化トップページの設定デザインfixその他(redirect_to、welcomeページ作成)
  4. 4. プラグインを使う プラグイン = Rubyのgem(とくにRailsで使われるもの)  何を隠そう、Railsもgemのひとつです。 プラグイン利用の基本(1) Gemfile に gem を設定 gem 利用するgem名(2) コマンド実行(gemのインストール) $ bundle install(3) あとはマニュアル,ReadMe等で、ごにょごにょ・・・
  5. 5. プラグインを使う ただ、、、  プラグインはとてもたくさんあります。  キビシいようですがひとつひとつ説明していけないので、自分で できるようにがんばってマニュアルを読んでいきましょう。 わりと有名な使えるプラグイン devise :ユーザー認証 https://github.com/plataformatec/devise kaminari:ページネーション https://github.com/amatsuda/kaminari PDFKit :PDF出力(html記述)https://github.com/jdpace/PDFKit prawn : PDF出力(Ruby記述)https://github.com/prawnpdf/prawn
  6. 6. Ruby/Railsに働いてもらう 言語から見たおおまかな役割分担 HTML ウィンドウ操作データの集計 データの表示 特殊ボタン 編集 など 保存・更新 ブラウザ上の表示補助 Ruby Rails JavaScript データ保存・更新、表示指示 など DBここら辺の話 scaffold範囲
  7. 7. Ruby/Railsに働いてもらう 今回働いてもらうもの バリデーションの設定(Railsのメソッド) 自前メソッドの追加(Rubyで書く自分のメソッド) Railsのメソッドは★の数よりは少ないので、少しずつマニュアルや 本や勉強会、はたまた他人のコードからネタを仕入れましょう。 Rubyのメソッドの作り方は、基本的なRuby力が必要です。少しず つでいいので、マニュアルを読みながら自分でメソッドを書いて 力をつけましょう。
  8. 8. Ruby/Railsに働いてもらう バリデーションの設定 → app/modelsに実装 例:Workshopのnumberがダブらないようにする(1) app/models/workshop.rbに実装 validates :number, uniqueness: true 対象カラム 設定他にも、ブランクチェック、文字数制限など、いろいろ設定あります。参照:http://guides.rubyonrails.org/active_record_validations_callbacks.html
  9. 9. Ruby/Railsに働いてもらう 自前メソッドの追加 → app/controllers 、app/models   どちらでも実装できることはできる   でも、controllerはあくまでブラウザとの橋渡し役 固有のメソッドはmodelに実装するのがスマート
  10. 10. Ruby/Railsに働いてもらう 自前メソッドの追加 例:Workshopの参加人数の平均値をworkshops#indexに表示する Workshop全体のことなので、ここではクラスメソッドを作ります。 app/models/workshop.rb class Workshop < ActiveRecord::Base Workshopクラスで、workshopテーブルのデータをいじります。
  11. 11. Ruby/Railsに働いてもらう 自前メソッドの追加 例:Workshopの参加人数の平均値をworkshops#indexに表示する(1) app/models/workshop.rbに自前メソッドを実装 def self.person_average homuhomu #ここがわからない人はRubyがんばれ end # self.をつけるとクラスメソッド、なかったらインスタンスメソッド(2)app/views/workshops/index.html.erbでメソッド呼び出し <%= Workshop.person_average %> クラスは大文字ではじめる
  12. 12. Ruby/Railsに働いてもらう Railsで使えるメソッド クラスメソッド   :主に、テーブルのデータ全体にかかるもの担当 インスタンスメソッド   :主に、テーブルの個別データにかかるもの担当 ヘルパーメソッド   :主に、viewの見た目を変更するもの担当
  13. 13. 考えてみようユーザー認証プラグイン:deviseを設定してみよう  参考:http://www.slideshare.net/fukajun/minamirbdeviseバリデーションが必要な箇所を考えて設定してみようWorkshopに参加人数カラムを追加しようWorkshop参加人数の平均を計算するメソッドを追加しようついでに、参加人数の最高、最低も一緒に表示してみようリリースに向けて不備がないか確認しよう ex.各ページのデザインが思い通りか、画面遷移は問題ないかetc.
  14. 14. おまけ テーブルへのカラム追加、変更、削除(1) migrationファイル作成 $ rails generate migration クラス名 e.g. rails generate migration AddColumnPersonWorkshop(2)migrationファイル編集 def change カラムメソッド テーブル名, カラム名, ・・・ end e.g. add_column :workshops, :people, :integer 参照: http://guides.rubyonrails.org/migrations.html(3) migrate実行 $ rake db:migrate
  15. 15. Lesson4は、これで終わりです。 お疲れさまでした。
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×