Ruby
record_timestamps に false をセットすることで、更新時の updated_at, created_at へのオートフィルをスキップすることができる。 # Active Record レベル ActiveRecord::Base.record_timestamps = false # モデルのみ User.record_timestamps = false # …
class User include MongoMapper::Document end class Address include MongoMapper::EmbeddedDocument embedded_in: user key :city validates_presence_of :user end user.address.city = nil user.address.valid? #=> false user.valid? # => true user.s…
csv_body = "line 1\r\nline 2\nline 3\rline 4" csv_body.lines # => ["line 1\r\n", "line 2\n", "line 3\rline 4"] # String#lines は \r を改行コードとみなさない csv_body.lines.map(&:chomp) # => ["line 1", "line 2", "line 3\rline 4"] # さらに S…
aws-sdk を使って S3 からバイナリファイルをローカルマシンにダウンロードする方法メモ。 ググッてヒットするのが v1 の情報ばかりで惑ったがとりあえず以下の読んでなんとかした。 Downloading Objects from Amazon S3 using the AWS SDK for Ruby - AWS D…
1章はイントロダクションで、メタプログラミングのイメージを膨らませる。 Summary とりあえずのメタプログラミングの定義はコードを記述するコード Ruby では実行時に言語要素に質問することができる これをイントロスペクションという 実行時にクラスの情…
昨年末の RubyKaigi 頃にそろそろ Ruby プログラマとして一人前になろうと思い買ったが真ん中ぐらいまでで読み捨ててた。 内容めちゃ面白かったのは覚えてるが身についたとは言いがたいので、再読しながらちゃんと手を動かしたい。 amzn.to
昨日から腹が痛いと思っていたら胃腸炎にかかったらしく、頭が働かない…。 ほぼ寝てたのでいくつか読んだだけ。 Ruby pythonでいうところのvirtualenvをrubyでどう実現するのか、ずっと調べないまま放置してたので学んだ。 Mac OSX 10.9(Mavericks)で最新のP…
Ruby プログラミング言語Ruby買ってみた。イントロダクションから既に知見がある。 メソッドに別名を付けられる class Sequence def length return 0 if @from > @to Integer((@to - @from)/@by) + 1 end alias size length # sizeはlengthの同義語 end 算術…
Ruby なんだかんだ最近Ruby書いてなくて既に忘れそう。 幾つかの簡単なプログラミングクイズ解きながら、基本文法を思い出しつつ新しいイディオムをインプットする。 定常的に書いていこう。 n.times.map Integer.times.map { }という、複数回同じ処理を繰り…
Ruby 今更ながら、Rubyの開発環境について何も知らなかったので色々調べていた。vimが主流ぽい。 vim JavaはEclipe、PythonはAtomで書いてきたのでvim力が低い…。vim力上げていきたい。 $ brew unlink vim $ brew install vim --with-lua $ curl https://raw…
Ruby on Rails codecademyのRuby on Rails講座を100%完了したけど、これで何か作れるかというと相当厳しいと思うので何か作ってみる。
Ruby on Rails codecademyのRail講座始めて65%ぐらいまで進めた。 基本的なコマンドから学んでる。 rails new bundle install rails generate model Message a model file in app/models/message.rb. The model represents a table in the database. a migra…
Ruby codecademy を100%まで達成した。 attr_accessor setter / getter 的な。 module You can think of modules as being very much like classes, only modules can't create instances and can't have subclasses. They're just used to store things! sc…
Ruby codecademy のRuby講座を90%まで進めた。今日カバーしたところは経験した言語にない、または似てるけど異なる要素があって面白かった。 Zen of Ruby There's always more than one way to do something in Ruby. Java, Pythonとは違う精神。Perlでは馴…
初日から飛ばすとあとが辛い事例にならないようライトに勉強した。 Ruby 思い起こせばPythonも最初はcodecademyから始めたので、Rubyもとりあえず基礎はこちらでやってみる。 Learn to codewww.codecademy.com 基本文法を書きながら覚えられてよい。 プログ…