整理されていない走り書きメモ
devise入れたら
rails g devise:install rails g devise user
modelとmigrationを好きなだけゴニョゴニョする。
rake db:migrate rails g devise:views users
"config/initializers/devise.rb"に"config.scoped_views = true"ってしとく。
xhrリクエストでauthenticate_user!とかされても当然リダイレクトしないので、application_controllerとかメソッド作ってリダイレクトさせる。
kaminari入れたら
rails g kaminari:config rails g kaminari:views default
acts-as-taggable-on入れたら
rails g acts_as_taggable_on:migration rake db:migrate
タグ付けするモデルに(:タグ名複数形で)
acts_as_taggable_on :tags
キャッシュするならフィールド追加(cached_タグ名単数形_list:string)
rails g migration add_column_to_tables cached_tag_list:string rake db:migrate
typus入れたら
rails g typus
スマホサイトのおやくそく
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=0.6667, user-scalable=no"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="format-detection" content="telephone=no">
レイアウトで切り替えるヘッダー
PCサイト用
<link rel="stylesheet" href="http://twitter.github.com/bootstrap/1.3.0/bootstrap.min.css">
スマホ用
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0b3/jquery.mobile-1.0b3.min.css" /> <script src="http://code.jquery.com/mobile/1.0b3/jquery.mobile-1.0b3.min.js"></script>
useful ヘルパー
strip_tags(STRING)・・・・・・・・・・htmlタグを除去する。 simple_format(STRING)・・・・・・・<p>~</p>で囲んで、安全なhtmlタグも使える。 STRING.html_safe・・・・・・・・・・・・そのまま安全なhtmlタグも使える。
useful アクティブレコード・配列
Array.find・・・・・・・・・・・・・・・・・・・・ブロックの結果がtrueを返すときその値を返す Array.select・・・・・・・・・・・・・・・・・ブロックの結果がtrueを返すものの配列を返す
useful モデル
検索はスコープで
scope :search_title, lambda {|keyword| where('title like ?', "%#{keyword}%")}
前のレコード、次のレコードはメソッドで
def previous_record self.class.unscoped.where('created_at < ?', self.created_at).order(:created_at).last end def next_record self.class.unscoped.where('created_at > ?', self.created_at).order(:created_at).first end