タグ

ブックマーク / qiita.com/joker1007 (5)

  • 開発しやすいRails on Docker環境の作り方 - Qiita

    最近、Rails界隈でDocker使い始めました、という話を聞く機会が増えてきたので、自分が開発環境整備用に構築したDockerの設定をまとめておく。 ちなみに、production運用については以前書いたので適当に探してくださいw 結論から書いておくと、volumeをちゃんと活用すればいい、ってだけの話です。 まず、番用と開発用のDockerfileは分けた方が良い。一つでやろうとするとどうにも無理がでるので。 自分はDockerfileとDockerfile-devというものを用意している。 docker-composeはほぼ必須です。少なくともrailsプロセスとDBだけでも二つは必要だし、Dockerfileを分けてると事故るので。 Dockerfileはこんな感じ。 FROM mybase:ruby-2.3.1-debian RUN echo "deb http://http.

    開発しやすいRails on Docker環境の作り方 - Qiita
  • [小ネタ]実はRubyのブロック引数受け取りにキーワード引数が使える - Qiita

    今更ながらブロック引数の受け取りにキーワード引数が使える事に気付いた。 よくよく考えるとブロック引数の受け取りはメソッドの引数受け取りと同じ処理してるんだから、メソッドの定義で使えるものは基的に使えるはずで、至極当たり前の事といえばその通りなのだが……。 (自分は今日意識するまで気付いてなかった……) だからこんな感じで書ける。 [23] pry(main)> [{hoge: "fuga", foo: "bar"}].each do |hoge:, foo:| [23] pry(main)* puts hoge [23] pry(main)* puts foo [23] pry(main)* end fuga bar

    [小ネタ]実はRubyのブロック引数受け取りにキーワード引数が使える - Qiita
  • JSでRailsのヘルパーメソッドを限定的に利用するためのgem - Qiita

    Railsではassets:precompileをした時にファイルのハッシュ値をファイル名の末尾に追加してキャッシュ管理を楽にする機能があります。 JSの内部でそれを検知することは基的にできないため、.coffee.erbなどという形にしてRailsのヘルパーをerbの形で埋め込んだりします。 しかし、これが氾濫するとlintが使えないしエディタによってはシンタックスハイライトも死ぬし、もしSprocketsを将来的に外したくなった時に非常に邪魔になります。 なので、必要になるにしても局所化したい。できれば余り目に付かない所に押し込めたい。 というわけで、限定的にRailsのヘルパーメソッドっぽいものをJS上に定義するgemを作りました。 名前が思い付かなかったので、単純に rails_js_helper というgemです。 使い方 コンフィグファイルの生成 $ bundle exec

    JSでRailsのヘルパーメソッドを限定的に利用するためのgem - Qiita
    june29
    june29 2015/05/15
    あるあ… あるある
  • ActiveRecordの読み込みが実際にトリガーされた場所をログに記録するgem - Qiita

    ActiveRecordは必要になるまでDB読み込みをしません。 なのでやたら複雑なビューの中でクエリを弄ったり、コントローラーが肥大化してる状態でひどいSQLがログに流れてくると、パっと見ではどこが原因なのかすぐに分からない。 なので、SQLが実行された時にそれが実際にトリガーされたソースコードの位置も一緒にログに吐いてくれるgemを作りました。 bulletで分からないような、ビューのループの中で直接モデル読んでるみたいなヤバイ箇所を速やかに見つけるためのものです。 joker1007/activerecord-cause 仕組み的にはActiveRecordのロギングの仕組みを丸パクリしてcaller_locationsを足した感じ。 全ての読み込み位置を表示するわけではなく正規表現でマッチするパスを持ったソースコードの位置のみをログに記録します。 Railsで利用する場合は自動的に

    ActiveRecordの読み込みが実際にトリガーされた場所をログに記録するgem - Qiita
  • Sprockets再考 モダンなJSのエコシステムとRailsのより良い関係を探す - Qiita

    すいません。締切守れませんでした…。 やっぱ、java-jaの忘年会の翌日は辛い…。 はじめに Webシステムを開発していると切っても切れないのがJavaScriptです。 Railsはかなり早い時期からalt-JSや結合、minify等を組み込めるようにフレームワークにそれを取り入れてきました。 それを支えているのがRails3.1から導入されたsprocketsです。 それに伴なってJSのライブラリをどうやって管理するかという点について、独自の路線を取ることになりました。 JSのライブラリを同梱したgemパッケージにラップしてrubygemsとして管理する方法です。 ある程度は上手くいっていたし、今もその流れは続いているんですが、時々問題になることもあります。 例えばメンテナの対応時期がズレてて古いバージョンのままだったり、似たようなgemが乱立してややこしくなったり。(backbon

    Sprockets再考 モダンなJSのエコシステムとRailsのより良い関係を探す - Qiita
  • 1