Download presentation
Presentation is loading. Please wait.
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使い方の勉強
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.