Macアップデート時のNodeのエラー

サイト移行しました blog.kozakana.net

awscliでCloudFrontへ証明書をアップロード

サイト移行しました blog.kozakana.net

capistrano3のupload!で『Encoding::CompatibilityError: incompatible character encodings: ASCII-8BIT and UTF-8』エラー

capistranoのタスクでディレクトリ内のファイルをリモートに上げる処理を↓のように書いていたところ # lib/capistrano/tasks/uploads.rake namespace :uploads do task :wpuploads do ask(:upload_path, nil) on roles(:web) do upload!('wp-content/uploads…

Aws::SQS::Errors::SignatureDoesNotMatch エラー

サイト移行しました blog.kozakana.net

ActiveAdminでリレーション先のIDを検索する

kind -> question -> userとそれぞれ1対1で関連付けされている時、いつも通り filter :user, as: :numeric と書いてもuserモデルを検索できません。 filter :question_user_id, as: :numeric のように書けば関連先のuser_idで検索することが出来ます。 また…

Railsでマルチスレッドを使用した場合に RuntimeError: Circular dependency detected while autoloading constant エラーがでる

サイト移行しました blog.kozakana.net

redirect_toでパラメータをつけてリダイレクトする

サイト移行しました blog.kozakana.net

さくらVPSのサーバーにajentiを入れてみた

サイト移行しました blog.kozakana.net

ActiveAdminのdatalistが結構使えそう

ActiveAdmin/formasticの入力スタイルでdatalistが使えそうだということがわかりました。 たくさん入力候補がある時は数値の一部を入力すると右側に対応する名前がリアルタイムで表示されます。 f.input :admin_user_id, as: :datalist, collection: User.al…

ActiveAdminでserializedされたカラムを扱う

ActiveAdminのフォームでserializeされたidなどを得ようとするとtextエリアに手入力をしないといけないのでセレクトボックスで選択できるようにしてみました。 まずはシリアライズされたデータを保存するカラムを作成します。 db/migrate/xxxx_create_user.r…

unicorn使用時nginxでパーミッションエラー

unicorn+nginxで動かそうとしてcapistranoでデプロイしたら『403 forbidden』のエラーがでました。ログをみてみると、 2015/09/23 03:00:12 [crit] 1140#0: *1 stat() "/home/app/appname/production/current/public/" failed (13: Permission denied), clie…

gemのSpreadsheetを使用時にNoMemoryErrorがでる

サイト移行しました blog.kozakana.net

現在上場中の証券コードと会社名を取得するGEM作りました

サイト移行しました blog.kozakana.net

株価/為替/原油の情報を入手するサイト一覧

株価と為替と原油の情報を得られるサイトを探すのに苦労したので、見つけたサイトをまとめてみました。 株価 株価データダウンロードサイト (http://k-db.com/stocks/) CSV形式で2007年からのデータがダウンロードできる。先物やインデックスもあり。 無尽蔵…

数値の下2桁のみ取り出す

サイト移行しました blog.kozakana.net

CSSでおしゃれな色付き下線を引く

css

サイト移行しました blog.kozakana.net

hashのKEYを数値やシンボルにする

hashのキーを文字列からシンボルへ変更するならActiveSupport使っていればsymbolize_keysを使えばいいけど、これだけのために使えない時はこれでできます。 (参考:rails/keys.rb at master · rails/rails · GitHub) json_data.keys.each do |key| json_data[…

スイッチサイエンスで購入したUSBリチウムイオン充電器で充電する方法

スイッチサイエンスで購入したマイクロBから充電するリチウムイオン充電器[IC:MCP73831T] を使用して 110mAhの電池 を充電しようとおもったのですが、容量によって抵抗値を変えないといけないらしく少しハマりました。 データシートの3ページ目に書いてある…

オブジェクトがSymbolかどうか判別する

オブジェクトがシンボルかどうか判別したかったのですが、sym?やsymbol?がなさそうなのでこのように判別しました。 if obj.class == Symbol p "I'm symbol" else p "I'm not symbol" end # obj = :symbol の時 #=> I'm symbol # obj = "string" の時 #=> I'm…

クラスの拡張時にsuperでブロックを渡す

こんな感じの短いブロックを使った処理を毎回書いてるなって時ないでしょうか。 uniq_arr = arr.uniq{ |item| item[:name] } メソッドに分離してもいいんですが、 def name_uniq arr arr.uniq{ |item| item[:name] } end name_uniq arr メソッドに分離すると…

aws-sdk(Version2)でS3のファイルを削除する方法

aws-sdkは現在Version1とVersion2があるようで、Version1とVersion2は基本的に互換性はない様なので注意が必要です。今回はVersion2について書きます。 まず、aws-sdkを使うにあたって初期設定をしないといけません。『Aws.config.update』の部分ですね。 Ra…

クレジットカードの期限切れでさくらのVPS上のサーバーが停止→復旧まで

クレジットカードの有効期限切れ&サービス停止の警告メールを読んでおらず、さくらVPSのサービスを止められてしまいました。 今回はメールを読んでいなかった僕の不注意なのですが、クレジットカードの有効期限は5年程度なので、5年前に登録したメールア…

Railsで warning: duplicated key at line 196 ignored: :openstack_region が出る

サイト移行しました blog.kozakana.net

例外が起きそうな処理を制限回数繰り返す

サイト移行しました blog.kozakana.net

bdf2ttfコマンドでBDFフォントをTTFフォントに変換する

サイト移行しました blog.kozakana.net

RailsのActiveRecordで本年度のデータを取得する

ActiveRecordで今年の元旦から今日までのデータを全て取得したかったのですが、なんかあまりスマートではない感じがするなー today = Time.now this_year = today.year new_years_day = Date.new(this_year, 1, 1) p User.where(day: (new_years_day..today))

Rubyでアメリカ式の日付を読み込む方法

Date.parseで読み込めない形式の時はDate.strptimeを使って読み込む date = "06/25/2015" p Date.strptime(date, "%m/%d/%Y") # 出力結果<Date: 2015-06-25 ((2457199j,0s,0n),+0s,2299161j)> ちなみに_strptimeという関数もあってハッシュ形式で返してくれる date = "06/25/2015" p Date._strptime(date, "%m/%</date:>…

Chromeのブックマークシステムを前のやつに戻す

chromeの新しいブックマークシステムに全然なれないので戻しました。 chrome://flags/にアクセスしてbookmarkを検索『拡張ブックマーク』のドロップダウンボックスを無効へ変更します。 あとは再起動すれば設定完了。

CentOSでタイムゾーンをUTCからJSTに変更する方法

新しくVagrantで立てたCentOSで時刻がUTCになっていたので、JSTに変更しました。 sudo cp /etc/localtime /etc/localtime.bak sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime あとは『vagrant reload』などで再起動すれば適用されているはずで…

Rubyのparsedateは1.9以降使えなくなっていた

日付のパースをしようと検索するとよく検索結果に出てくるparsedateですが、1.9以降は廃止となり、Date.parseを使わなければならいらしい。 require 'parsedate' ParseDate.parsedate("2015/06/02") ↓ Date.parse("2015/06/02") 参照:http://docs.ruby-lang…