ブックマーク / doruby.kbmj.com (12)

  • ブロックを使ったテンプレートメソッドの実装

    こんにちは、shimadaです。 今日は、Rubyの特徴の一つであるブロックを引数にとるメソッドの書き方を説明します。 題材として、「あちこちに同じ順番で処理が並んでいる時のコードの整理」を取り上げたいと思います。 重要な処理を行う場合に、開始、終了、エラーが起こったときの詳細を記録しなければならない。 そんな時の処理は、だいたいこんな風になるのではないでしょうか。 class SimpleWorker def action(arg) logger = Application.logger begin logger.info("SimpleWorker.action", "start") do_something rescue => e logger.error("SimpleWorker.action", e.message + e.backtrace.join("¥n")) logge

  • git-svnによる実プロジェクトでのチーム開発

    こんにちは、SHIMADAです。Gitネタはたろちゃんに先を越されてしまいましたが、自分の環境でも、実際のプロジェクトでGitを実用的に使える状況になってきたので、そのへんについて書こうと思います。 ■ 前提 前提条件として、 1. プロジェクトのためのsvnリポジトリがサーバーに用意されていること 2. リポジトリが PROJECT_NAME/ `- trunk/ `- branches/ `- tags/ というSubversionの標準的なディレクトリ構成となっていること 3. ローカルに最新のgitがインストールされていること が条件となります。 前者が揃っていないという人は、まずSubversionを導入できるように社内での推進をがんばってください。 申請書とUSBメモリがないとコミットできないんだよ……、という人は、残念ながらあきらめてください。 (あれはネタだと信じていますが

    naopontan
    naopontan 2010/04/27
    subversion
  • 100段階のレベル調整が出来る将棋アプリ「金沢将棋レベル100」

  • SourceForge.JP のプロジェクトを Subversion から Git へ移行する

    たろちゃんです。SourceForge.JP のプロジェクトをSubversionからGitへ移行しましたのでその時に記録から手順を紹介します。 僕が現在開発しているエレコマはSourceForge.JPにてホスティングを行っており、開発リソースをすべて一元管理しております。 開発当初、弊社内のレポジトリがSubversionであった事や僕自身にSubversionの運用ノウハウがあったことからSourceForge.JPでもSubversionを採用していました。 しかしながら、Railsプロジェクトという特性からか、何人かgit-svnを利用している方がおり、また開発に集中するという意味でもGitの方が魅力的であるため、今回SubversionからGitへ移行しました。 まずはGit自体を有効にします。Gitを有効にするためにはSourceForge.JPへ管理者としてログインしてか

    naopontan
    naopontan 2010/03/31
  • 【Ruby】半角/全角バリデータ

    入力項目には必ずといってもいいほど必要な「バリデーション」。 今回は、「その文字列が半角 or 全角文字のみであるか」というバリデーションをRubyで紹介します。 今回の条件は以下の通りです。 半角文字:半角カタカナ、半角英数字、一部の記号(濁点、半濁点など) 全角文字:半角文字でないもの メールアドレス、URLは除外 では、半角/全角のバリデーションのソース公開☆ KCODE = 'u' def self.hankaku?(str) return nil if str.nil? #文字列が空のとき unless str.to_s =~ /^[ -~。-゚]*$/ # 半角のみOKなので、全角が混ざっているとfalseが返る return false end return true end def self.zenkaku?(str) return nil if str.nil? #

  • rubyでOAuthを使ってみる

    Google, twitter, mixiアプリなどのAPI認可のためのOAuth(オース)という プロトコールが利用されています。 今回は、マッシュアップなWebサービスを作る上で必要になってくるOAuthの簡単な概念とrubyでの使用例を紹介したいと思います。 ■ OAuthとは? デスクトップアプリやwebアプリケーションなどにセキュアなAPI認証の 標準的な手段を提供するオープンプロトコルです。 OAuth利用することによって、ユーザのgoogleアカウント情報(ID,Password)を保持しなくてもgoogleのアドレス帳などを参照するwebサービスを作ることができます。 ■ OAuthが必要になった背景 OAuthがなかった場合、先程の例のようなgoogleのアドレス帳を参照するサービスを作ろうとした場合、ユーザのgoogleアカウント情報をもとにアクセスすることになります。

    naopontan
    naopontan 2010/03/03
    認証,マッシュアップ
  • ruby on railsでデータをExcelファイルに出力する。 to_xls Plugin編

    こんにちは、KBMJの中平@railsエンジニアです。 今回はruby on railsでデータをExcelファイルに出力する 方法ついて書きます。  よく、Webシステムでデータをファイル出力する際にはCSV形式で出してしまう事が多いと思いますが、CSVデータをExcelで開くと、「001234」というデータの頭ゼロが消されてしまい「1234」と数値として表示されてしまう事があるため、 CSVではなくExcel形式で出力したい時はないでしょうか? また、rubyでデータをExcelに出力するプラグインはいくつか存在しますが、railsで簡単に出力できるプラグインはあまりないのではないかと思います。 そこで、今回はrailsから簡単にデータをExcelファイルとして出力することができる、to_xlsというpluginの使い方について書こうと思います。 環境 OS : Windows Vi

  • Railsプラグイン:Simple Column Searchの使い方

    さて、Simple Column Searchとは、複数カラムにわたるLIKE検索処理を楽にコーディングできるようにするプラグインです。READMEを読みながら実践してみましょう。 ■ 今回の環境 Ruby 1.8.7 Rails 2.3.5 SQLite3 (アダプタはsqlite3-ruby) ■ やってみよう まずはプラグインのインストール(gitがPATHに追加されているか確認してください) $ ./script/plugin install git://github.com/jqr/simple_column_search.git モデル作成(名称がかなりいい加減になっていますがご了承ください...) $ ./script/generate model Example text1:text text2:text text3:text text4:text 生成したモデル(app/

    naopontan
    naopontan 2010/01/21
    SQL の LIKE を楽にコーディング
  • Capistrano実践Tips集

    TrinityTです。 先日行った社内勉強会でCapistrnoについて発表したので公開します。 実際にKBMJでCapistrano運用を行った際のノウハウをまとめてあります。Capistranoについての基説明は省いてあるので、初めてCapistranoを使う人向けではありません。 内容1.これだけは入れとけ!便利なgem・capistrano_colors・capistrano_ext2.こう記述しろ!設定ファイル・deploy.rbデフォルト記述・Passengerとの連携設定・パスワードなどの動的入力・プッシュ式デプロイ 3.意外と知らない?注意点 ・role:dbの意味・ユーザのアップロード画像などはどこに置くべき?    コメント (0) |トラックバック (0)

  • Ruby On Rails ログインのプラグイン restful_authentication

    こんにちわ〜。 2日続けてのプラグイン紹介で、今回はログインのプラグインの紹介です。 前はacts_as_authenticationというプラグインがよく使われてたらいいんですが、 サポートが打ち切られたらしくrails2.0系からは、restful_authenticationを代わりに使ってほしいそうです。 とゆうわけで解説の始まり始まり〜。。。。 続きはこちら http://doruby.kbmj.com/rick_blog/20090417/Ruby_On_Rails__restful_authentication

    naopontan
    naopontan 2009/08/03
    認証
  • クローラー対策 ロボットテキスト (robots txt)

    DoRuby! (ドルビー!) は現場のエンジニアによる、主にRubyなどの技術に関する様々な実践ノウハウを集めた技術情報サイトです。 こんにちはカツオです。   今日はrobots.txtの書き方について説明します。   というのも webサーバーでmongrelを使ったrailsアプリで、mongrelがよく落ちるのですが、 クローラーのアクセス数が多いので、 googleのクローラーをIPで制限してみたら、 mongrelの落ちる回数が、極端に減りました。   対策の一つとして、robots.txtを書く機会があったので、ご紹介です。   ■robots.txtとは? クローラーや、スパイダー、検索ロボットといわれる 検索エンジンのインデックスを取得するために、web上を巡回しているソフトがあります。 もちろんそれらにアクセスされると、 検索エンジンのインデックスに登録される可能性

  • Ruby on Railsのシステム開発|技術解説ブログ『DoRuby!』

    「Do Ruby!」とは、株式会社ケイビーエムジェイのエンジニアによるRuby on Rails技術解説ブログです。Ruby on Rails開発現場ならではの実践的な技術ブログを随時掲載していきます。是非ご覧下さい。KBMJ(ケイビーエムジェイ)では、Ruby on Railsによるシステム構築・開発を承っております。KBMJがZDnetで連載している記事を紹介します。コメントなどありましたらそちらでお願いします。 Rubyでどう書く?:RubyCocoa+Core Animationでお手軽アニメーション 佐藤伸吾(KBMJ) 今回はRubyCocoaMac OS XのフレームワークであるCore Animationを使って、お手軽にアニメーションを作成してみましょう。

    naopontan
    naopontan 2008/07/15
    RoR
  • 1