ruby

ActionMailer単体で、HTMLメール送るコードをとにかくすぐ書きたいんです。。

なんというナマケモノでしょう。。 HTMLメールのサンプルを探してぐぐると大抵はもう.html.erbを作っています。 それがもう面倒臭い場合あるいはとにかくHTMLメール送信を試したい場合はこんな調子です。 require 'action_mailer' require 'yaml' require 'e…

ActionMailerとERBを単体で使ってRailsみたいにメールを飛ばしたいんです

もうrails使えよみたいな。。 require 'yaml' require 'action_mailer' require 'erb' conf = YAML.load_file('sample.yml') ActionMailer::Base.smtp_settings = { address: 'smtp.gmail.com', port: 587, domain: 'smtp.gmail.com', authentication: :plai…

ActionMailer単体でメールを送信したいんです

SMTPサーバはGmailで。。 require 'action_mailer' ActionMailer::Base.smtp_settings = { address: 'smtp.gmail.com', port: 587, domain: 'smtp.gmail.com', authentication: :plain, user_name: '俺のメール', password: '俺のパスワード', enable_startt…

rubyでcaseを使ってもうちょっといい感じに書けないものかな?

と思っていたら。。 Rubyのcaseを〇〇(言語名)のswitch文だと思っている人たちにぼくから一言ガツンと申し上げたい つまりこんな書き方が出来る。 obj = 'hoge piyo fuga' other_obj = {} val = begin case obj when nil then 'nilでした' when other_obj th…

rubyからsqlite3を扱いたいんです

もちろんkoboクローラ的な意味で。。 # coding: utf-8 require 'sqlite3' begin db = SQLite3::Database.new('jkobo.db') db.execute(<<-DROP) drop table if exists jkobo; DROP db.execute(<<-CREATE) create table jkobo ( id integer primary key autoin…

mechanizeでgetしたhtmlが化けているっぽいんです

引き続きkoboをクローリングする文脈で、です。 irb(main):001:0> require 'mechanize' => true irb(main):002:0> agent = Mechanize.new => #<Mechanize:0x410eda0 @agent=#<Mechanize::HTTP::Agent:0x410ed88 @allowed_error_codes=[], @conditional_requests=true, @context=#<Mechanize:0x410eda0 ...>, @content_encoding_hooks=[], @cooki…</mechanize:0x410eda0>

楽天koboの検索結果をクローリングしたいんです

1日1回。だって新着がわからないんですもん。「新しい順」でソートすると紙版の出版年月でソートしよるし。 ウェブAPIないし、だったら毎日クローリングして差分を取るしかないじゃないですか。。 mechanizeを使うよ gem install mechanize これでおk。 ざ…

電車本4版でRails勉強し始めた頃のメモが見つかった。。

RailsによるアジャイルWebアプリケーション開発 第4版 メモが手元に残っていたのでup。。あまりこの頃とレベル変わっていないな。。 Windows7でやっています。先輩はlinuxでやった方がいいと言ったけど横着しました。。仕事でもWindowsだし。。 ちなみに電車…

Windowsでrubyのpすると日本語が化けるんです

あとto_sqlをpするとダブルクオートがいちいちエスケープされてすごくうざいんです。。 結論 pやめてputsする。 rubyの引数に-E Windows-31J:UTF-8を追加する pはそのオブジェクトがなんなのかちゃんと分かるように出力するとか、そういう役割があるみたいで…

自インスタンスのインスタンスメソッドを呼び出す時の、selfの使い方がよくわからないんです

class Sample attr_accessor :abc def xyz;@xyz;end def xyz=(v);@xyz=v;end def asdf=(v); p "in asdf with #{v}";end def set abc = 'def' xyz = 'uvw' asdf = 'axvaf' end def print p abc p xyz end def set2 self.abc = 'def2' self.xyz = 'uvw2' self.…

普通のRubyスクリプトからOracle 11g XEにActiveRecordで繋ぎに行く

必要なgemをインストール PS:Desktop> gem install activerecord-oracle_enhanced-adapter Fetching: activerecord-oracle_enhanced-adapter-1.4.2.gem (100%) Successfully installed activerecord-oracle_enhanced-adapter-1.4.2 1 gem installed Installi…

Railsの規約に沿わないシーケンスオブジェクトを利用する

モデルでself.sequence_name = 'hoge_sequence'などと書く。 select hoge_sequence.nextval from dualなどを直接実行する。 もうちょい詳しく USERSテーブルがある場合、Rails的にはUSERS_SEQというシーケンスがあることを想定している。 USERSが新しく作る…

テキストリンクでフォームを送信する

とりあえずはこのノリでいける。 link_to_function "text to submit", "$(this).closest('form').submit()" link_to_functionはonclickにreturn false;を書き足してくれるんですね。 他にも書き様は色々あるというのは参考リンク参照。 参考 Rails 3 submit …