hello-world
webエンジニアのメモ。とりあえずやってみる。

#Ruby

[Rails]find_or_create_byとfind_or_initialize_by

Rails4で確認。

capistranoで世代管理する際の注意点

最近、デプロイツールに capistranoを使っているのですが、世代管理の設定を勘違いしていたのでメモを残しておきます。

[rails]unicornでpryを使う

先日、pryでデバッグする という記事を書きましたが、こちらはrails server(フォアグランド)でアプリを立ち上げた際のデバッグ方法でした。

RspecでHTTPヘッダを設定したい場合

RspecでHTTPヘッダを設定したい場合はrequest.envを編集すればできました。

[Ruby] timesとmapを使って配列作成

timesとmapを組み合わせることで配列を作れます。

passengerの再読み込み

passengerを使ってrailsアプリケーションを起動している場合、設定ファイルを更新しても即時反映されないためエラーになる。

rubyでワンライナーでwebサーバ起動

ちょっと確認したい場合にapacheやnginxの設定を追加するのが面倒だったので調べてみました。

[mac][ruby]「文学フォルダ」のつくりかた

いつか一緒に作りたいと思っていた 佐藤ねじプロジェクトで、「 [文学フォルダ」 という作品をつくりました。

[rails]YouTube動画の削除チェックを行うRakeタスクを作ってみる

YouTubeは様々な理由で動画が削除されてしまうことがあるので、YouTubeを使ったサービスでは、動画の削除チェックが必要になると思います。

[rails][passenger]Redmineの初回アクセスが遅いのをなんとかする

プライベート用に使っているRedmineが異常に遅いです。

[解決] capistranoでcopy_excludeが動いた

昨日、 capistranoでcopy\_excludeが動かない という記事を書きましたが、追加調査を行い無事に解決することができました。

ActiveRecord オブジェクトをコピーする

## dupを使ってコピーする

GoogleDrive::Error: Update has failed: An invalid XML character (Unicode: 0x{2}) was found in the value of attribute "{1}" and element is "8".

google-drive-rubyを使って、DBに保存されたデータをスプレッドシートにエクスポートする機能を作成していた際に、以下のエラーが発生しました。

RailsでOmniauthを使ってTwitterログインする

Ruby2.0, Rails4で確認

[rails]strip_tagsをcontrollerで使う場合

テンプレートのhelperメソッドにhtmlタグを除去するstrip\_tagsメソッドがあります。

[rails][mysql]テーブルのカラムにlongtextを使用する

マイグレーションファイルに:limitを指定すれば型を変更できました

[ruby][vim]Rubocopを使ってコードをチェックする

rubyのコーディングルールをチェックしてくれる rubocopをvimから自動実行するように設定しました。

Hello World Resque (Railsにresqueを導入する)

Ruby2.0, Rails4で確認

[Rails]bundle installを並列で実行する

bundle installの初回実行時にすごく時間がかかっていたのですが、最新のBundler(version 1.5.1)では並列実行ができるようになったので試してみました。

[rails]bodyにclassを付けて特定のページでのみjsが動作するようにする

Asset Pipelineを使用するとjsやcssを結合してくれます。

AWS SAMを使って署名付きURL発行APIを作る

S3の署名付きURL発行機能の検証を兼ねて、S3のキーをパラメータとして受け取り、署名付きURLを発行するAPIを作ってみました。

[rails][mysql]ActiveRecordで現在接続しているデータベース名を取得する

ActiveRecordで現在接続しているデータベース名を取得するには

[rails]Active Adminの編集画面に登録済みの画像プレビューを表示する

先日のActiveAdminまとめに続き今回もActive Adminネタです。

active_adminでカスタムfilter(select box)を設置する

active\_adminで管理画面を作る際にデフォルトでfilterを作ってくれますが、select boxを使いたい部分がテキスト入力になっていたりします。

[ruby]OmniAuth利用時に Authentication failure! timeout: Net::OpenTimeout, execution expired が発生

OmniAuthを使ったTwitter認証機能を試していた際に、

htpasswdコマンドなしでbaisc認証ファイルを作成する

basic認証ファイル作成時は

[ruby][mac]bundle install時にSymbol not found: _SSLv2_client_method (LoadError)

rbenvで動かしていたruby2.1.0環境でbundle installを実行したら

[mac][ruby]OpenCVを使って顔認識する

昨日の記事ではCentOSにOpenCVをインストールしましたが、カメラが使えるmacで試そうと思い設定とデモを作成しました。

[ruby]thorコマンド内でgetsを実行すると`gets': No such file or directory @ rb_sysopen エラーが発生

thorを使ってCLIコマンドを作っていた際に、getsを使ってユーザ入力を受け取ろとしたところ

[Mac]『入門Chef Solo』を読んで試してみた

伊藤直也さんの『 入門Chef Solo』を読んで、実際にVagrantを使って試してみた。

rubyでDB(mysql)に保存された特定の値をcsvで書き出す

ruby(1.9.3)でDB(mysql)に保存された特定の値をcsvで書き出すスクリプトを書いてみました。

RSpec3で真偽値のテストをする場合の注意点

RSpec3の場合、be\_true, be\_falseによる真偽値のテストは使えなくなりました。

[未解決] capistranoでcopy_excludeが動かない

capistrano でデプロイ時に不要ファイル(.svn, .git等)を省く設定をしたのですが、なぜかうまく動きません。

rvmをアンインストールするコマンドが「切腹」だった

さくらvpsのruby環境をrvmからrbenvに乗り換えました。