訳も知らないで

デザイン&プログラミングのことも書くし、それ以外のことも書く。

ruby

【Ruby】HTMLメールのテスト(デザインの確認)がしたかったのでメール送信するためのrubyスクリプト書いた。

HTMLメールを気軽に送信してデザインの確認をしたかったので メール送信用Rubyスクリプト書いた。fumihiro/send-test-email · GitHubGmailアカウントを使って指定したメールテンプレートを使いメールを送るだけ。 意外とHTMLメールを気軽に送る方法が無かっ…

【Rails】delayed_jobのenqueue方法とqueue(非同期処理)実行方法についてまとめ

Railsで非同期処理を行うためのgemであるdelayed_jobを使ったので、 キューを入れる方法とそのキューの実行方法をわかった範囲でまとめておこうと。 検証環境(version) Rails 3.2.11 delayed_job 4.0.0 delayed_job_active_record 4.0.0今回はキューをActive…

【Ruby】よく見かけるklassってなによ?

今更ですが… よくRubyで「klass」ってワードが出てくるんですけど、これは一体何を表しているのだろう… とずっと迷っていました。 同じような人がいたよほら… 〜参考になりました!〜 What is the difference between Class and Klass in ruby? - Stack Over…

【ruby】gsubで複数の文字パターンを置換する&後方参照する場合

小さなことですが… 複数の文字パターンを置換する gsubで複数の文字を置換したい場合、メソッドチェーン?で 置換文字数分gsubを呼ばなきゃならんと思っとりました。 "hogeはfugaです。".gsub("hoge", "私").gsub("fuga", "男") #=> "私は男です。" 実は置換…

【Ruby on Rails】非同期処理についてその②。 〜マルチスレッドとかマルチプロセスを実装してみた〜

業務で非同期処理の実装が必要となったので、 前回ぼんやりマルチスレッド、マルチプロセスについて調べてみたのですが…両方軽く実装してみたのでメモ。実際に実装してみたところ、マルチプロセスでもマルチスレッドでも 処理時間自体は短縮されたのですが、…

【Ruby】階層の深いHashを作る方法を知って考えてみた。

rubyでプログラムしているとhashのvalueがhash、みたいな 階層の深いハッシュを作る場合結構ありますよね。※極端な例 { :hoge => { :fuga => { :piyo => { :foo => { :bar => {:baz => 1 } } } } } } ただその場合いちいちハッシュを定義するのがめんどくさ…

【rvm】rvm gemset pristineとは一体。

rvmで管理しているすべてのバージョンのrubyを再インストールするには、 $ rvm reinstall $(rvm list strings | tr "\n" ',') $ rvm all-gemsets do rvm gemset pristineでいけるそうです。 1行目ですべてのバージョンのrubyを再インストール。 2行目は何…

【ruby、Rails】pry-stack_explorer:Pryでstackの確認や階層の移動ができる!

以前にもPryについて書いたりしてるのですが、 本当Railsアプリのデバッグではお世話になりっぱなしですm(_ _)m 過去のpry関連エントリ また便利なgemを教えてもらったので記しておきます。 「pry-stack_exploler」というgemです。 〜お世話になっております…

【Ruby】each_with_indexは知ってたけどeach.with_indexは知らなかった…

もっと早く知りたかった… ってことRubyとかRailsとか多いですよね。知らなかったけど便利クラスやメソッドがあったんだ、みたいな。 例えばRubyで配列の中身を順番に表示するとき、each使ったりしますよね? list = [a,b,c] list.each { |val| puts val } で…

【Ruby, Rails】Geocoderで地名から座標(緯度・経度)を取得してみた。

Webサイトではよく店舗の場所なんかを地図で表示することがありますが、 ちょっと住所から場所を割り出して地図表示したいなーと思ったので geocoderというgemを使ってみました。使い方はRailsCastに詳しく書いてあったので問題なし。サンプルと同じように、…

【Ruby, Rails】sitemap-generatorを使ってsitemapを作成。

SEOの一環でサイトマップとか作って検索エンジンのインデックスに登録することありますよね? 〜googleのサイトマップについて〜 サイトマップについて - ウェブマスター ツール ヘルプ〜サイトマップのフォーマット〜 sitemaps.org - プロトコル サイトマッ…

【Ruby,Rails】pryでコマンド履歴を見る。

rails console時にpryを実行するようにしています。シェルだとctrl + rで過去に実行したコマンドを呼び出せるじゃないですか。 ああいう機能ないかなーとおもってたらやっぱりありました。 マニュアル読んどけと。Managing History · pry/pry Wiki · GitHubp…

【sunspot】Railsでsunspot(solr)を使用するとき、rsolrでモデルを経由せずインデックス作成を行う。

お仕事で使う機会があったので忘れないよう記しておきます。 全文検索機能をRubyアプリケーションに設ける場合、便利なのがsunspotですよね。検索エンジンのsolrを検索に使用し、Railsアプリから簡単に操作することができるようになります。〜簡単な使い方は…

【ruby】net/httpでPOSTリクエスト(https)投げてみる。

個人で何かWebアプリ実装してみる、という時に何かのwebapiを利用することが最近多いです。rubyでapiにhttpリクエストを投げるには、getの場合だとopen-uriを使うことが多いのですが postなど投げるときはnet/httpを使っています。最近https(ssl)通信でリク…

【github、Rails】githubを使ってみよう! deviseでAOuth〜情報取得

今回はgithubより情報を取得してみます!githubはプログラマにはお馴染みのソース(プロダクト)管理サービス?ですよね。 最近Railsアプリでgithubのwebapiを使うことがあったので、簡単にまとめておこうと思います。 公式サイト(ガイド)はコチラ GitHub API …

【ruby】pryを使ってデバッグしよう。

以前すこしだけpryについて書きましたが、 (【Rails】RailsコンソールがPryで起動できる「pry-rails」 - 記すに足らず。) 恥ずかしながら最近やっとpryを使ってデバッグするようになったので 超基本的なことですがメモっておきます! pry 使い方は下記参照!!…

【Rails?】環境変数の設定について(heroku,local)

パスワードやなんちゃらkeyなどをプログラムに書きたくないので、 環境変数を使って設定すること、よくありますよね? Rubyなら secret_key = ENV["SEACRET_KEY"] # ENVハッシュのキーは文字列しか使えませんおそらく!みたいにしてプログラム内で使いますよ…

【vim】vimprocを使ってvim-quickrunからRspecを非同期実行!

テスト、書いてますか? 私は… すこしづつ慣れてきているところでしょうか。 ruby(Rails)で開発をする際、ユニットテストにRSpecを利用している方多いですよね。 Vimを使っている方ならおなじみの「quickrun」を私も利用して vim上からテストを実行している…

【RSpec】before :allの罠。

テスト、書いてますか? 私の会社では今のプロジェクトからテストを書き始めたので、 RSpec本でミニ社内勉強会とかしたりしてすこしづつテストに慣れようとしています。 テスト書きづらいひどいコードになっていることに気付かされ凹みますねw それもこれも…

【Rails】検索結果をViewの中に埋め込みたい → partial使えばよろし

あの、ずっと悩んでました… ここ2週間くらい。 すごい簡単なことなのですがぁ。 私がやりたかったのはですね、検索を実行すると取得結果を含めそのページを再描画すること。画面イメージ ただ単に、検索ページ(templete)の中に結果表示ページが含まれている…

【develop】Railsで検索サービスを作る 〜wikipediaで情報取ってくる編〜

情報の宝庫、Wikipekiaさんから情報を取ってくるようrubyで実装してみました。天下のWikipediaさんですから実装例なんて腐るほどあるだろう、と思っていましたが 意外とないのね。 (英語だったらあるのかも)そのものズバリ「Wikipedia api」なるものがあるよ…

【Rails】RailsコンソールがPryで起動できる「pry-rails」

irbの強化版とも言える「pry」 使ってる方多いですよね。どういう機能があるのかはよく知らない記述するのが大変なので、 知らない人は調べてみて下さいな。〜参考になりました!〜 Pry - an IRB alternative and runtime developer console irbの代わりにPr…

【twitter、Rails】twitterのAPIを使ってみた。

いまさらですが。 未だに何か公開されているAPIを使ってRailsアプリを作るということをやっていなかったので、 超簡単ですが使ってみました。情報はたくさんあるので、参考にしたものをメモしておきます。 参考にさせていただきました! Railsで簡単Twitter…

【heroku】herokuでRailsアプリを動かすのに必要なこと

ubuntu(11.10)-Ruby(1.9.3)-Rails(3.1) ubuntuで開発、ローカルでRailsアプリが動くことを確認し、herokuにpushしてデプロイだー と思ったらheroku上で動かない… 初めてheroku使ったときにわからなかったことがあったのでメモ。 postgreSQL関連のモジュール…

【Rails】Rails3.1を実行する際エラー → rubyのライブラリが足りません?

開発環境作ってRailsプロジェクト動かすまでに ところどころ手間取ったのでメモ。 参考にさせていただきました!! Ruby/Rails: Rails3.1のインストール RVM: Ruby Version Manager - 'rvm pkg install openssl' RVMのRuby環境にreadline,openssl,zlibなどの…

【ruby】irbでエラーが出る:readlineが足りません??

あのですね、rvmをインストールしてruby1.9.3をその中にインストールしたのですよ。 すると、irbでエラーが出る。 $ irb Readline was unable to be required, if you need completion or history install readline then reinstall the ruby. You may fol…

【Ruby】sendメソッドとスコープ

新しい環境での開発で頭沸騰してます。 class TestClass def test_method @fuga = 99 hoge.each { |obj| obj.send("#{key}=", @fuga) } end endみたいなコードを書いたら、何故かエラーになる。 どうやら「@fuga」が「obj」のインスタンス変数として認識され…