ichigoryume programming blog

プログラミングに関する備忘録。主にHTML5, C#, Swiftなど。

Rails

Rubyスクリプトを実行してテーブルにデータを挿入する

Rubyスクリプトでテーブルにデータを挿入する場合 begin user = User.new user.name = "hoge" user.save end のように書いたスクリプトをlib/tasks以下などに置き、 rails runner lib/tasks/hoge.rbのように実行する。

rails new と bundle install で rails のバージョンが違うとき

まず bundle instal するときの Gemfile で指定しているバージョンの rails をインストールする gem i -v 5.0.1 rails rails のバージョンを指定して rails new する rails _5.0.1_ new Railbook --skip-bundle で、bundle install

コードにメモをつけ、後から検索する

TODO, FIXME, OPTIMIZEアノテーションでマーキングしておくと、 あとでコマンドで検索できる。アノテーションのつけ方 # TODO: ほげほげ検索方法 rails notes特定のアノテーションだけ検索するには rails notes:todo

yieldとcontent_forの使い方

用途 例えば、Layout(application.html)側でHEADの骨格を定義し、 HEAD内のView毎に異なる部分はViewに記述する、など。 HAMLの例 Layout:application.html.haml %html %head %meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type…

Railsで画像ファイルへのパスを書くとき

hoge.pngがアセットのプリコンパイルによってhoge_0d23b....pngのようなdigest付きの名前になるので 元のファイル名でパスを指定してもブラウザに表示されない。 イメージへのパスの書き方 .erb <img src="<%= asset_path "hoge.png" %>" />.haml = image_tag "hoge.png", class:"image", alt:"ほげ…

RailsでのJavaScript読み込み制御

スタイルシートと似てる。 app/assets/javascripts/application.jsにデフォルトの設定が記述されている。 デフォルトでは = require jquery = require jquery_ujs = require turbolinks = require_tree . になっている。 ここを変えれば、全Viewに反映される…

Railsでのスタイルシート読み込み制御

デフォルトでは app/assets/stylesheetsの下を全て読み込む application.cssを最後に読み込む ように設定されている。これは、application.cssに以下のように記述されているため *= require_tree . *= require_selfrequire_selfはapplication.css自身、requi…