Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ruby on Rails 勉強会 11月5日「土」 崔 昌権

Similar presentations


Presentation on theme: "Ruby on Rails 勉強会 11月5日「土」 崔 昌権"— Presentation transcript:

1 Ruby on Rails 勉強会 11月5日「土」 崔 昌権
崔 昌権

2 目次 前回の復習 ActiveRecordについて勉強 Viewについての勉強 デバックについての勉強 次回の勉強内容

3 プレゼン資料のダウンロード http://www10.atwiki.jp/ccqofinfo/pages/99.html
ホワイトボートにも書いている

4 前回の復習 簡単な復習をしましょう。

5 ActiveRecordの使い方(1) 規約 主キーをオートナンバー型で定義する。(必 須) 主キーのカラムキー名は’id’(推奨)
テーブル名は複数形(推奨) 主キーとテーブル名を明示的に指定する場合 class syslog < ActiveRecored::Base set_primary_key :id set_table_name :syslogs end

6 ActiveRecordの使い方(2) カラム情報 カラム情報取得クラスメソッド columns column_names
columns_hash カラム情報オブジェクト カラム情報オブジェクトのインスタンスメソッド Name Type Default Limit Null sql_type Text? Number? Klass type_cast(value)

7 テーブルの命名ルール アンダースコア(小文字化) 複数化 “Memo” => “memos”
“XMLData” => “xml_datas” “Syslog”.underscore => “syslog” “Syslog”.pluralize => ”Syslogs ”

8 ActiveRecord基本的な使い方(1)
CRUD操作 まずはCreate syslog = Syslog.new #インスタンスの作 成 syslog.message = “rails勉強会” #カラムに値を 設置 Syslog.save #この時点でDBに保存される 。 createを使う。 syslog = Syslog.create(:message => “Rails勉強 会”) Syslog = Syslog.new(:message => “....”)

9 ActiveRecord基本的な使い方(2)
CRUD操作 次はRead Syslog = Syslog.find(2) Syslog.message # Rails勉強会 複数の取得 Syslog = syslog.find([1,2,3]) Syslog[0].message # Rails勉強会 Syslog[1].message #

10 ActiveRecord基本的な使い方(3)
CRUD操作 次はUpdate syslog.message = “Rails勉強会” syslog.save syslog.update_attribute() #単数形 syslog.update_attributes() #複数形 syslog.upate(id,attributes) syslog.update_all(updates , conditions)

11 ActiveRecord基本的な使い方(4)
CRUD操作 Delete操作 インスタンスメソッド AR#destroy syslog.destroy クラスメソッド AR#delete(id) 例:Syslog.delete(1) AR#delete_all(conditions) AR#destroy(id) AR#destroy_all(conditions)

12 ActiveRecord基本的な使い方(4)
データ取得 簡単なデータの取得 find(keys) = Book.find([2,4,5]) find_by_XXX(value) find_all_by_XXX(value) 例: @book = Book.find_by_bookname 複雑な条件でデータを取得 Rails 3 joins lock order select limit where offset group having

13 ActiveRecord基本的な使い方(5)
whereメソッド @books = Book.where(:bookname = “Rails”) @books = Book.where('bookname=?',”rails”) @books = Book.where('bookname=:bookname' :bookname=>'Rails') @books = Book.where(:bookname = “Rails” ).limit(5).offset(4)

14 検証機能 検証機能のとんな役割? エンドユーザから、入力されたデータの正しさ をチェックし、制限する役割です。 サーバー側での検証機能
Active Modelで利用できる検証機能 例えば:validatesメソッド    validates : title ,:presence => true # 空はエ ラーが出る クライアント側での検証機能 Jqueryのプラグインを利用する。

15 Viewについての勉強(1) テンプレート 拡張子 html.erb js.erb rhtml [ 古い ] rjs [ 古い ]
コントローラごとにフォルダが作成されるので その中に作りたいViewファイル作成する。 部分テンプレート 繰り返し、汎用的な部分 テンプレートが長くなった場合

16 Viewについての勉強(2) 部分テンプレート アンダースコア ”_” で始まるファイル 例: _footer.html.erb ,
アンダースコア ”_” で始まるファイル 例: _footer.html.erb , _header.html.erb など、 インタンス変数は使える。 呼出はrender :partial 例:  <html> <tiltle> </title> <body> <%= render :partial =>”header” %> </body> </html>

17 Viewについての勉強(3) レイアウトファイル
App / view / layouts / application.html.erb [デ フォルト] App / view / layouts / use_page2.html.erb [ 自作 ] 利用: 利用したいコントローラの中に定義する layout “use_page2”

18 デバックする console 使い方 dbへの保存、各Rubyコマンドも使える。 debugger インストール 使い方
gemfileに設定して、bundle install まで。 yメッソド ppメッソド put とp メッソド

19 Rails console Rubyの機能 now = Time.new now.tomorrow
now.tomorrow.tomorrow Railsモデル機能 モデルのインスタンスの作成など、 データの検索、保存など

20 コード書き方の原則 モデル :ビジネスロジック コントローラ :Viewに渡すデータ ヘルパー :Viewの表示に手伝う
モデル      :ビジネスロジック コントローラ   :Viewに渡すデータ ヘルパー     :Viewの表示に手伝う ビュー      :データ+HTML+            CSS+JS

21 実機での練習 デバックツールをインストールする。 「gem install ruby-debug19」 または、gemfileファイルに
gem  'ruby-debug19' 書いて bundle install コンソールを使ってみる。 インスタンスの作成、 データの保存、 データ検索 Viewの練習

22 次回について コントローラの勉強 Ajax使い方の勉強


Download ppt "Ruby on Rails 勉強会 11月5日「土」 崔 昌権"

Similar presentations


Ads by Google