ruby
あらすじ 新規にAWSでRailsアプリをホストするぞ、となったリア充は、dockerでプロビジョニングのデバッグ環境を作ったものの「プロビジョニングツールはChefでいいのか?」という迷いが常にあった。このタイミングでかねてから耳にしていたfabricとAnsible…
10.times do |i| p i + 1 end のi + 1が可読性悪いというときの話。 で、 (1..10).each do |i| p i end こんな感じで書ける。 さらに・・・ 1.upto 10 do |i| p i end こっちはrubyっぽいけど、実際コードの中にふっとでてくると、以外に頭に入ってこない(…
使っているやつ 使っているやつはGemfileを晒す。なお、複数プロジェクトのGemfileをマージしたものなので、全部同時に使ってるわけじゃない。 gem 'rails', '~> 4.1.4' gem "mysql2", "~> 0.3.16" gem 'bootstrap-sass', '~> 3.1.1.0' gem "sass-rails", gi…
仕様の変更部分とかそういうのは置いといて、実際に2.14.xで運用していたRailsアプリを3.0.xにアップデートしたときの作業メモ。無くなったメソッドなどは書き換えで対応することとし、後方互換のためのgemなどは一切使わぬゆえ。なので、3へのアップデート…
マイナスを入れるだけ。 @user.birth_date.strftime("%Y年%-m月%-d日") マイナス思考から すぐに抜け出す9つの習慣作者: 古川武士出版社/メーカー: ディスカヴァー・トゥエンティワン発売日: 2012/11/14メディア: 単行本(ソフトカバー) クリック: 8回この…
追記)この記事古いので、Rail4.1以上を使う場合は、ActiveRecord::Enum使ったほうがいいと思います。https://github.com/brainspec/enumerize結論からいうと、これはいいです。 例えば職業や性別なんかのDBで管理するほどのもんじゃないものはコレで扱うと…
homebrewの人でrbenv intall 2.0.0-pxxxでこけてエラーログがこんなだったら・・・ 1 warning and 1 error generated. make[2]: *** [readline.o] Error 1 make[1]: *** [ext/readline/all] Error 2 make[1]: *** Waiting for unfinished jobs.... ~~~ ld: w…
http://stackoverflow.com/questions/12846099/create-a-random-set-of-latlngs-inside-a-boundingbox rng = Random.new(seed) lat = minLat + rng.rand * (maxLat - minLat) lng = minLng + rng.rand * (maxLng - minLng) 劇場版 魔法少女まどか☆マギカ [前…
CentOS6.3で発症。パスワードを聞かれて入力したあと、タイムアウトするまでハングする。 https://github.com/capistrano/capistrano/issues/474capistrano-2.15.3/lib/capistrano/recipes/deploy.rb task :cleanup, :except => { :no_release => true } do …
gemのバージョンが2.0.2だったので最新の2.0.3に上げようとgem updateをやったが反応がない、ただのしかばねのようだ。 $ gem update --system Latest version currently installed. Aborting.gemのupdateは実際にはrubygems-updateが使われているらしいので…
これで動いた!さくらのVPS+github+capistranoでrailsアプリ自動デプロイの設定ファイルを置いておくの続き的エントリ。このさくらのVPSの環境をstagingに変更していく、という内容。 参考 http://d.hatena.ne.jp/ria10/20121211/1355192518 https://github.…
chefのレシピを作る環境が欲しくて、サラの状態からのテストとかしたいからローカルじゃきついのでVirtualBoxを使った環境を作ろうとしたところ、Vagrantというツールがアツいという話を思い出し、チラ見したらマジでアツそうだったので導入することにした。…
chefをインストールして何かしようとするとエラーになる。 [ec2-user@ip-10-xxx-xxx-xxx ~]$ chef-solo -v /home/ec2-user/.rbenv/versions/2.0.0-p0/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- rubyge…
ちょいと多めのテキストデータをサーバに送るとき、帯域を抑えたいからDeflateしてBase64して送ろう!と思ったが、バグとか基準にしているRFCが違うとかそういうのでサーバサイドであるRubyと相互変換できなかったらヤだなぁと思って試してみた。deflate and…
ここ嫁 http://api.rubyonrails.org/classes/ActiveModel/Serializers/JSON.htmlつまり、これがツイッター風なデータモデルだったとして、Userと一緒にUserのTweetがネストされたJsonデータを返したいとなるとmodelが class User < ActiveRecord::Base 〜 sn…
原因はこれじゃないか!? Rails 3.0.4と2.3.11からXHRリクエストの際もCSRFトークンの検証が必須になったので注意ということで何も意識しないとCSRF対策にひっかかるので、crsf-tokenを渡そう。 var csrfToken = $('meta[name="csrf-token"]').attr('conten…
このエラーメッセージでぐぐってきた人に伝えよう。RTFM! http://rubydoc.info/github/jnicklas/capybara/Capybara/Node/Actions#select-instance_methodfill_inを使ったテストに慣れてきてselect boxとか他のコントローラもやってみっか!とオラわくわくし…
ここでlink_toで検索して出てくるページのExampleに出てる http://api.rubyonrails.org/ <%= link_to(@profile) do %> <strong><%= @profile.name %></strong> -- <span>Check it out!</span> <% end %> # => <a href="/profiles/1"> <strong>David</strong> -- <span>Check it out!</span> </a> こういうこった!追記)続編:railsのlink_to_ifにブ…
ログインしなきゃいけない画面だったり、同じ画面でも、ログインしているのとしていないのでは挙動が違う画面はたくさんあって、そういうときのテストはどうやったらいいんだろうという疑問が発生した件について。答えはここに。 http://ruby.railstutorial.…
http://railscasts.com/ ここマジで捗る。ここで、実装したい内容をキーワード検索すればいいから。え?英語ですよ。もちろん。 でもたぶん読めるから。がんばって!!
devlopment.logとかに Could not determine content-length of response body. Set content-length of the response or set Response#chunked = trueとでるワーニング。何か問題があるのかと思ったけど、よく考えたら最初からでてるしなぁ。と思って調べてみ…
RSpecを使って最初にぶつかるのがletな人はぼくだけかも知れないけど、とにかくメモ。参考はこのサイト。 http://ruby.railstutorial.org/chapters/modeling-users?version=3.2#sidebar:let require 'spec_helper' describe User do before do @user = User.…
http://devcenter.heroku.com/articles/multiple-environments ここに書いてあるよ! heroku create --stack cedar --remote stagingstackがcedarはrails3.1以上のナウい人向け。see:http://devcenter.heroku.com/articles/rails31_heroku_cedarあとは git p…
RSpecの条件文を日本語で書くケースがあるようだけど、そんなのノー!ノー!No!No!ノン! RSpecは英語で書いてこそ TDDじゃなくてBDDなんだから!で、RSpecはbehaviorは英語で書く前提になってるんだから! it "ほげほげであること" doって文章的におかしいで…
rvmを使っていればカンタンだぴょーん。 $ rvm get head && rvm reload $ chmod +x $rvm_path/hooks/after_cd_bundler $ cd ~/path/to/project_dir/ $ bundle --binstubs=./bundler_stubsこれでもうbundle execって打たなくていいよ! bundleするgemが増えて…
rake0.9の問題なんじゃねーか、とかなんとか。 https://github.com/ctran/annotate_models/issues/28で、この問題は2.4.1.beta1で回避されているのでこれを指定すべし。 group :development do gem 'rspec-rails', '2.7' gem 'annotate', '2.4.1.beta1' end
新しく言語を学習しようとするときは、まず文法などを包括的に知るのが良いと思う。で、それには本を買うのが手っ取り早く、人に聞いてみると以下の本なんかがおすすめらしい。プログラミングRuby 1.9 −言語編−作者: Dave Thomas with Chad Fowler and Andy …
webサービスを作るときにけっこうな確率で必要かつ汎用的な処理の1つとして「ユーザー認証」がある。 ここに業務要件が入る余地は多くないので、オープン&フリーで良いものがあれば利用したいなぁ、と思いいろいろ探してみた。で、railsだとDeviseというラ…
ここにステップが書いてあるよ。 http://www.jetbrains.com/ruby/webhelp/using-rspec-in-rails-applications.html Depending on your particular version of Rails, different workflows are possible. If you are using Rails 3.0 and higher, it is recom…
これが初Macな自分用メモ。充実させるぜ! ruby1.9.2+rails3.1+rubymineで各種インストール、設定など、やった順に! Macに関わること OSの再インストール 【MacBook Air買ってやったこと(その2)】Mac OS X(Lion)を再インストール 実はユーザー名(homeデ…