2020-01-01から1年間の記事一覧
実行結果・実行されているSQLを確認するための自分用メモです。 作成~登録~更新~削除 新規オブジェクトの作成 #新規オブジェクトを作成 >> user = User.new(name: "Michael Hartl", email: "michael@example.com") (0.1ms) begin transaction => #<User id: nil, name: "Michael Hartl", email: "michael@example.com", created_at: nil, updated_at: nil> create</user>…
RailsでBootstrapを導入する方法 メモ書き程度の備忘録。 最初に一度やるだけの手順ってどうしても繰り返しにくいから忘れがちなんだよなぁ~ってことで… Gemfileにbootstrap-sassを追加 gem 'bootstrap-sass', '3.4.1' BootstrapではLESS CSS言語を使用して…
削除機能(destroy)の実装 getやpostはリンクを作るときに特に指定しなくてもRailsがいい感じに解釈してくれていたが、DELETEの場合は明示的に指定してあげる必要がある。 Postモデルがあったとして、その削除機能のリンクを作るときは以下のようになる <%= l…
partialとは? 複数の画面で同じ部品を使用している場合に、その部分を切り出してpartialファイルに置くことで、 使用するviewで呼び出すだけでその部品を展開してくれる仕組み。 _(アンダーバー)から始める慣例があるため、_名前.html.erbというファイルを…
今回はユーザーの入力値チェックを行う機能について書いていく。 ストロングパラメータとは? WEB上でユーザーが送信してきたパラメータの内容をチェックしてから受け取る仕組みのこと。 悪意のあるデータを事前に防ぐことができる。 事前に受け付ける項目を…
フォームヘルパーとは? Railsでフォームを作成するためのヘルパー。 これを使用すると簡単な記述でフォームを作成することが可能になる。 内部ではHTMLを生成してくれる。input、textarea、submit等 form_for form_tag form_with と3種類用意されているが…
link_toとは viewでリンクを表示させることが出来る。最終的には<a>タグを生成して表示される。 helperメソッドの1つ。 link_toメソッドに表示させたい文字列とリンク先を引数として渡す必要がある。 link_to '表示させる文字列',リンク先のパス(URL) URLを指</a>…
ビューの作成 例えば、postsコントローラーのindexアクションに対応するviewはapp/view/posts/index.html.erbというファイルを作成する。 ERBとは? Railsが用意しているテンプレートエンジンのこと。 これを使用することで、 <% %>でRubyのソースコードとし…
コントローラーの作成 $ rails g controller [コントローラー名] Controllerでは複数のデータを扱うため、コントローラー名は複数形、頭文字は大文字にすること。 主に、controllerディレクトリにxxx_controller、viewディレクトリに新しいディレクトリ、テ…
DBの操作・確認 DBへの接続 $ rails dbconsole もしくは、 $ rails db デフォルトはSQLiteとなっている。 テーブルの確認 sqlite > .tables モデル名Postのデータを確認する sqlite > Select * From Posts; ※テーブル名は複数形であることに注意。 DB操作か…
モデルの作成 $ rails generate model 名前 [カラム名:型] [オプション] generateはgで省略することが出来るので、以下のようにも書ける $ rails g model 名前 [カラム名:型] [オプション] データ型 データ型 説明 string 文字列 text 長い文字列 integer 整…
scaffoldを使用して雛形を作成する scaffoldとは? Railsアプリケーションの作成時には モデル・ビュー・コントローラー 更にそれに対するルーティングを作成する必要があるが、 その作業をまとめて行い、雛形を作成してくれる機能。 やってみる Railsアプリ…
Railsのインストール Railsを動作させるにはRubyとデータベースが必要 バージョンの確認 $ Ruby -v $ sqlite3 --version Railsのインストール $ gem install rails --no-document Railsのバージョン確認 $ rails -v アプリケーションの作成 $ rails new appn…
アクセス権 共通 #アクセス権 # -public =>デフォルト、どこからでも呼び出し可 # -protected # -private: レシーバーを指定できない # publicでもnewしたときに呼ばれるinitializeメソッド、クラスの外に書いたメソッドは自動的にprivateになる class User …
ループ処理 while i = 0 while i < 10 do puts "#{i}: hello!" i += 1 end 出力結果 0: hello! 1: hello! 2: hello! 3: hello! 4: hello! 5: hello! 6: hello! 7: hello! 8: hello! 9: hello! times 10.times do |i| puts "#{i}:hello" end #1行であれば省…
ハッシュ Key/Valueで管理する 省略記法があるので、 以下の3パターンはどれも結果が同じになる scores = {"tanaka" => 200, "suzuki" => 300} scores = {:tanaka => 200, :suzuki => 300} scores = {tanaka: 200, suzuki: 300} 出力 p scores[:suzuki] 値…
1年ぶりに勉強再開。 ドットインストールの内容メモ 出力メソッド printメソッド 改行なしで値を出力 putsメソッド 改行付きで値を出力 pメソッド 値に加えて型情報も出力される 文字列はダブルクォーテーションで囲まれたまま出力されるような感じ printf …