Nokogiriの覚書

使い方をいつも忘れるのでメモ 詳しい使い方は以下のURLが素晴らしい Nokogiri(公式サイト) スクレイピングのためのNokogiri利用メモ - それはそれ。これはこれ。 基本 Nokogiriのノードオブジェクトを得る require 'rubygems' require 'nokogiri' require '…

メタプログラミングRuby(月曜日)

面白かったところ、知らなかったことなどのメモ Ruby東海でメタプログラミングRubyの読書会が始まるのでその予習 Rubyのクラス宣言 3.times do class C puts "Hellow" end end これがclass Cを3回宣言したということじゃないということ つまりRubyにおけるcl…

ウェブサーバへのアクセスログを眺めていたいときのtail+grep

--line-bufferedをいれないとgrepのバッファのせいでリアルタイムでなくなる # tail -f access_log | grep -v -E --line-buffered 'jpg |gif |png |ico |css '

変数に入ってる値から動的にインタンスを生成

メモ irb(main):034:0* class HelloWorld irb(main):035:1> def initialize irb(main):036:2> p "Hello World" irb(main):037:2> end irb(main):038:1> end => nil irb(main):039:0> class_name = "HelloWorld" => "HelloWorld" irb(main):041:0> eval("#{cl…

バナー配信システムを作る(2)

次にキャンペーンにバナーを結び付けたいのだが、WindowsでRMagickが動かないのでとりあえずテキストを配信することにする。 bannersテーブルをscaffold scaffoldしようとするとなぜかいまさらsqlite3-rubyがないと言われるので、bundleでinstallする。bundl…

バナー配信システムを作る(1)

詳しくはあとでまとめる。続くかどうかはわからない ユースケース ユーザ登録ができる キャンペーンが登録できる キャンペーンにバナーが登録できる バナー貼り付け用のコードが取得できる バナーのインプレッション数、クリック数が取得できる ER図 とりあ…

Rails3のscaffoldを試す

目的 データベースのテーブルをつくり、CRUD処理ができるようにする。 所要時間 5分 作業 ショッピングモールのようなものを作ることが目的なので、まず商品のマスタを管理できるようにします。 テーブルをつくり、商品のCRUD処理を自動生成する とりあえず…

WindowsにRails3環境を構築(Ruby1.9.2)

目標 WindowsXPの環境にRuby1.9.2とRails3をインストールし、Rails3アプリケーションが動作することを確認する。 所要時間 5分ぐらい(RDocのインストール時間による) 目次 Ruby(とrubygems)のインストール SQLite3のDLLのインストール Ruby on Rails3のイ…

Ruby1.9.2に乗り換えた(1.9はやい)

RubyKaigi2010にも参加したし、1.9対応のRuby on Rails3も正式リリースされたということなので、1.9に乗り換えることにした。記念にフィボナッチ、FizzBuzzに次ぐ三大非実用関数「竹内関数」で1.9に乗り換えた幸せを確認してみる。 $ rvm use 1.9.2-preview1…

UbuntuのLAMP環境構築++

windows+xampp環境でのCakePHPの実行速度が隣の席の人の10倍遅いことが発覚したので特に原因を調べずにwindows+andLinux環境に乗り換える。とりあえずphpMyAdminが動いてバーチャルホストの設定をするところまで。公開するのは誰かに突っ込みを入れて欲しい…

markItUp! jQuery universal markup editor Helper for CakePHP1.3

markItUp! jQuery universal markup editor Helper (Articles) | The Bakery, Everything CakePHPThis Helper is great but does not work on CakePHP ver1.3 so use this. The Code for CakePHP1.3 Copy and paste the code below in /views/helpers/markit…

CakePHP1.3のtestActionでモック、スタブを使う。

前回のエントリーでtestActionが使えないと言っていたのですが、案の定僕のやり方が間違っていました。 testActionでモック、スタブが使えるようになったので一応紹介しておきます。やりたいことは前回と同じで特定のコンポーネントをスタブにします。 コー…

CakePHPのsimpleTestでStubを使ってみる

スタブを使ってみた。やりたいことは半分できたが、いそいろ分からないところも多かった(後日できた) やりたかったこと ComponentsをスタブにしてControllerのテストをしたかった。 今回の例で言うと「はてなブックマーク数」を取得するコンポーネントをス…

CakePHPで本番と開発のファイルとファイル構成を同じにする

どの環境でもファイルを同じにしたい。 たとえば本番環境だからといってcore.phpファイルを別々にするとかをやめる。デフォルトのCakePHPで開発環境と本番環境で共有できないのはcore.phpとdatabase.phpだろう。そのへんは CakePHP core.phpの設定をbootstra…

Ruby on Rails製のCMS「Radiant」を試す

http://www.ruby-lang.org/で利用されており、Railsで作られているというCMS「Radiant」を試してみた。 単純で使いやすそうだが、画像管理などもプラグイン(extension)で行わなければならないのは不便だし、ここまで低機能なものをわざわざRailsで動作させ…

「Subversion実践入門」を読み終えて(ASUB会まとめ)

4月11日ごろからid:taje4120と毎朝少しずつSubversion実践入門という本を読んだ。 朝にサブバージョンを勉強する会だからASUB会と名前をつけた。 その勉強会も終わり、1週間ほどたったので復習をかねて内容をまとめる。 「Subversion実践入門」を読んで得ら…

賃貸物件を探すときの僕の方法(テンプレートつき)

基本的には効率的な家の探し方(賃貸) | nanapiナナピを読むと良いネット上からや、店舗に行って物件を探そうとすると ネットには掲載されていない物件が多い お店に行って細かいこだわりを毎回伝えるのが面倒(恥ずかしい) ので、今までの5,6回の引越…

Rakeに入門

やれば簡単そうだけど、いままでやってなかったRakeについて調べた。 練習としてsubversionのリポジトリからコードをチェックアウトして、シンボリックリンクを張りなおすというcapistranoっぽい作業を自動化する。 やりたいこと ファイル構成はこんな感じ -…

第13回ASUB会(朝にサブバージョンを学ぶ会)

第10章プロジェクトの作成 Subversionへのインポートとtag,brancheディレクトリの作成 svn import -m "new project initial import" svn://example.com/project_name/trunk svn mkdir -m "Create tags directory svn://example.com/project_name/tags svn mk…

第12回ASUB会(朝にサブバージョンを学ぶ会)

第9章タグとブランチの使用 リポジトリ上にディレクトリを作る svn mkdir -m "comment" svn://svnpath/dirname 他のブランチの変更を作業コピーにリビジョンを指定してマージする svn merge -r37:39 svn://localhost/dirname 複雑なバグをブランチを分けて修…

現在表示しているURLへのリンクはしないHTMLのLinkヘルパー

CakePHP1.2での話し。メニューとかでありがちです url($url); } else { $str_url = $this->url($title); } if(strpos($str_url,Router:…

第11回ASUB会(朝にサブバージョンを学ぶ会)

タグ付けと、ブランチをコピーとか、コミットとチェックインとか使う用語を統一して欲しい。 特にこの章はタグなのかブランチなのか混乱してくるSubversion実践入門:達人プログラマに学ぶバージョン管理(第2版)作者: Mike Mason,でびあんぐる出版社/メーカー…

第10回ASUB会(朝にサブバージョンを学ぶ会)

第9章タグとブランチの使用 ブランチを作ったら、トランクとは別の場所にブランチもチェックアウトする。 現在のトランクをswitchコマンドでトランクに切り替えることもできる。 svn switch svn://ブランチのアドレス 上記のコマンドで作業コピーの参照先が…

Chunky Bacon

ホワイの(感動的)Rubyガイドオリジナルはこっちにある http://www.aoky.net/articles/why_poignant_guide_to_ruby/chapter-3.html

とうもろこし

第9回ASUB会(朝にサブバージョンを学ぶ会)

第7章ファイルロックとバイナリファイル あまり使わなさそうなのでスキップ。バイナリファイルを扱うときに便利なファイルロックの方法などの紹介 第8章リポジトリの構成 リポジトリの構成 プロジェクトのリポジトリは以下のようにツリーを分けるのが慣習に…

第8回ASUB会(朝にサブバージョンを勉強する会)

第6章 一般的なSubversionコマンド 変更履歴の調査 Number.txtの変更履歴を見る svn log Number.txt 範囲を指定して変更履歴を見る svn log -r 19:24 Number.txt さらに詳しく見たいときは-v(--verbose)オプションをつかうblameコマンドを使うとファイルの各…

PayPalの定期購入について調べる

Subscribe Buttons(Updated on November 18, 2009)の内容。間違いがあったら教えていただけると幸いです。 支払い者 支払いをする人はPayPalのアカウントが必要(支払いの流れの中で勝手につくられる) 即時支払い通知(IPNもしくはInstant Payment Notific…

第6,7回ASUB会(朝にサブバージョンを学ぶ会)

第6章 一般的なSubversionコマンド 複数のディレクトリやファイルを一度にupdate svn update aaa bbb ccc update時のステータスについて $svn update U index.html #=> 中身に変更があった UU sitemap.xls #=> 中身と属性に変更があった U _notes #=> 属性だ…

デベロッパー向け要約「Amazon.co.jp Product Advertising API ライセンス契約 」

Amazon.co.jp Product Advertising API ライセンス契約 更新日:2010/1/5というもののうち特に注意が必要なものをピックアップ。(以下APAAPI) 1. Product Advertising API について 特記事項なし、 2. 加入 暴力的や、露骨なエロサイトには使えない(2chの人…