cluchのブログ

業務で使ったり、学んでいる知識を忘れないために覚書として使っていく予定。

Rails

マイグレーション

利用できるデータ型 string : 文字列 text : 長い文字列 integer : 整数 float : 浮動小数 decimal : 精度の高い小数 datetime : 日時 timestamp : タイムスタンプ time : 時間 date : 日付 binary : バイナリデータ boolean : Boolean 利用できるテーブルオ…

ビュー

外部スタイルシートを指定するリンクタグを生成 stylesheet_link_tag(スタイルシートへのパス [, HTMLオプション]) << options >> :media 関連ファイルの出力メディアのリンクタイプ screen,tty,tv,projection,handheld,print,braille,aural,allが指定可…

秘密トークンを動的に生成する

パブリックリポジトリ (public repository) として公開する場合、 Railsでセッション変数の暗号化に使用するための、 いわゆる秘密トークン (secret token) を 必ず更新することが重要です。 config/initializers/secret_token.rb # Be sure to restart your…

異なるデータモデル同士の関連付け

1対多 テーブル情報 下記のようなテーブルがあった場合の設定を確認します。 users id name 1 First Name 2 Second Name microposts id content user_id 1 First post 1 2 Second post 1 3 Three post 2 関連付けの設定 1人のユーザーに複数のマイクロポス…

バリデーション

文字列の長さをチェック validates :検証するフィールド名, length: { 検証パラメータ } ex) validates :content, length: { maximum: 140 } オプション オプション 説明 :minimun 最小の文字列長 :maximun 最大の文字列長 :in 文字列長の範囲(range型) :tok…

Rails 目次

学んだことを覚書していきます。 随時更新予定。 rbenvによるRubyのインストール Git GitHab Gemfile デプロイ railsコマンド・rakeコマンド ルーティング モデル マイグレーション 値の受け渡し バリデーション 異なるデータモデル同士の関連付け 秘密トー…

値の受け渡し

コントローラーからビュー @記号で始まる変数はRubyではインスタンス変数です。 ビューでは自動的にこれらのインスタンス変数をつかえます。 app/models/user.rb class UsersController < ApplicationController def index @users = User.all end end ⇓ app/…

モデル

すべてのレコードを取得 モデル.all

ルーティング

RESTfulなURLを自動生成 resources :リソース名 [, オプション] 生成されるルート Helper HTTPメソッド URL アクション 説明 XXXs_path GET /XXXs(.:format) index 一覧画面を生成 XXX_path GET /XXXs/:id(.:format) show 詳細画面を生成 new_XXX_path GET /…

railsコマンド・rakeコマンド

test::unitを組み込まないでアプリケーションの作成を行う $ rails new 名前 -T Test::Unitの代わりにRSpecを使うように、Railsの設定を変更する $ rails g rspec:install RSpecのテストを自動的に生成しないようにする $ rails g controller 名前s [アクシ…

デプロイ

Herokuのセットアップ Herokuにユーザ登録する https://signup.heroku.com/identity 必要なHerokuソフトウェアをインストール Heroku Toolbeltを使用する。 Ubuntuの場合下記コマンドのみでインストールできた。 wget -qO- https://toolbelt.heroku.com/inst…

Gemfile

Gemfileの設定 Rubyのバージョンを指定 ruby '2.0.0' SQLiteを開発(debelopment)環境のみで使用する設定 Herokuで使用するPostgreSQLとの衝突を避けるため group :development do gem 'splite3', '1.3.8' end RailsがPostgreSQLと通信できるようにする group…

GitHab

GitHubでリポジトリを作成しアプリケーションをプッシュする 現在のメイン(master)ブランチ用の"origin"としてGitHubに追加 $ git remote add origin https://github.com/<user name>/<repository name>.git GitHubにプッシュする -u オプションを付けることによって、プッシュ先がデフォ</repository></user>…

Git

最初のシステムセットアップ PC1台につき1回必要な必須の設定。 $ git config --global user.name "名前" $ git config --global user.email "メールアドレス" 便利なシステムセットアップ 色分け $ git config --global color.true エイリアス $ git conf…

rbenvによるRubyのインストールと、rbenvの使い方

rbenvのインストール rbenvとは複数のRubyを管理することができる。しかし、rbenvには、Rubyのインストール自体をサポートしてない様なので、ruby-buildというプラグインも合わせてインストールする。 GitHubからrbenvとruby-buildをクローン $ git clone ht…