タグ

Rubyとrubyに関するkatowのブックマーク (114)

  • noranukoの日記

    rails上でレコードを削除する際に、DBから物理的に削除してしまうのではなく、 削除フラグをつけて見えないようにするプラグイン。 ○使い方 インストール ruby script/plugin install acts_as_paranoidDBの設定 deleted_atカラムをdatetimeで作成 モデルに記述 def class Test < ActiveRecord::Base acts_as_paranoid end 以上で、「削除」したとき見た目は普通の削除と同じように削除されるけども、 DB上には"deleted_at"カラムに削除日時が記述されたままで残っている状態になる。 また、削除したものを取得・表示したい場合には下記の様に、オプションをfindするときに指定すればよい。 @test = Test.find(:all,:with_deleted => true) 一応

    noranukoの日記
  • Ruby on Rails + MySQL で全文検索 - ドワンゴ 研究開発ブログ

    このエントリでは Ruby on RailsMySQL を使って日語の全文検索を行う方法を記述する。Ruby on Rails のバージョンは 2.0.2、MySQL のバージョンは 5.0.67、Tritonn のバージョンは 1.0.12、Hyper Estraier のバージョンは 1.4.10 を使用した。サンプルの文章データとして、あらゆる日人にとって極めて身近な著作権切れ文章である『ドグラ・マグラ』と『黒死館殺人事件』を利用した。処理のために整形したデータはエントリに添付しておく。またデータベースへアクセスするコードではマイグレーションを除きできるだけベンチマークを取るようにし、その結果はエントリの最後に記載する。 ページネーション Rails でページネーションを実現する will_paginate という plugin は ActiveRecord に標準でつ

    katow
    katow 2009/02/03
    Railsでの全文検索実装
  • ActiveScaffold、複数モデルを増やしてもできるだけ共通ビューの編集で済ませる その1 - 河童Blog 〜 30過ぎてもソフト開発 〜

    ActiveScaffold、複数モデルを増やしてもできるだけ共通ビューの編集で済ませる その1 今回はRailsの話。 あるWeb+DBシステムで扱われるデータベース内の全テーブルに対して、Rails+ActiveScaffoldでテーブル内容検索・閲覧・CSV出力画面をぱぱぱっとお手軽に作る必要がでました。 単純にそれを テーブルを1つ追加 モデルも1つ追加 ビューも1つ追加… などとやると、さして機能が変わらないけどソースが派生して増え続けてしまう。 最悪派生コピーを許すとしても、コピーした後で手を入れる箇所ができるだけ少なく出来たほうが効率が良い。 ということで、まず手始めに「コントローラが増え続けても ビューは極力共通」で書く方法を検討します。 Railsは1.2.5、編集環境はAptana Studio1.2.1です。 ActiveScaffoldのプラグインは導入済みの状態か

    ActiveScaffold、複数モデルを増やしてもできるだけ共通ビューの編集で済ませる その1 - 河童Blog 〜 30過ぎてもソフト開発 〜
  • Aptana StudioでRubyクラスの構造と利用できるメソッドを調べる方法 - 河童Blog 〜 30過ぎてもソフト開発 〜

    Aptana StudioでRubyクラスの構造と利用できるメソッドを調べる方法 先の記事に関連して、私はcontrollerオブジェクトがビューで利用できる処まではで調べることができたのですが、そのcontrollerオブジェクトで利用可能なメソッドにはどんなものがあるのかまでは見つからず。 ということでAptana Studioの機能の中で探すことにしました。 あ、RadRailsパースペクティブ(RadRails1.1.1)の状態で作業しています。 ヘルプを開く F1 私は通常はVB.NETで開発してますし、困ったときはF1ヘルプ!の癖がついてます。 今回もまずはlayout.rhtmlを開き、controllerの記述位置にカーソルを立ててF1ヘルプを実行。 ヘルプのビューが起動し、なにやら検索を開始しましたが…「関連トピック」▼Aptana ERB エディター について ▼ダイ

    Aptana StudioでRubyクラスの構造と利用できるメソッドを調べる方法 - 河童Blog 〜 30過ぎてもソフト開発 〜
  • Aptana Studioの練習 ActiverScaffoldの動作解析(Search編) - 河童Blog 〜 30過ぎてもソフト開発 〜

    Aptana Studioの練習 ActiverScaffoldの動作解析(Search編) ふっと思い立ち、今開発中のActiveScaffoldのデバッグ途中のThread階層を晒す。 Aptana Studioの「デバッグ」ビューの画面です。 実施した操作 ActiveScaffoldにて1組のモデル、コントローラを作成。 デバッグモードでdevelopment、mongrelサーバを起動し、ブラウザから該当モデルのURLにアクセス。 単純にlistのアクションが完了する。 そこで、デバッガ上でコントローラーのファイル先頭から class StoreController < ApplicationController active_scaffold :store layout "layout" ブレークポイントはactive_scaffold :storeの行に配置。 さらに今度は「

    Aptana Studioの練習 ActiverScaffoldの動作解析(Search編) - 河童Blog 〜 30過ぎてもソフト開発 〜
  • Aptana Studioの練習 ActiverScaffoldの動作解析(Search編) 続き - 河童Blog 〜 30過ぎてもソフト開発 〜

    Aptana Studioの練習 ActiverScaffoldの動作解析(Search編) 続き 続きを書く前に、1件訂正。 最初にジャンプして位置を見失った行は、どうも active_scaffold :store do |config| みたいです。この行でステップオーバーすると、一気に前回記事のスタック位置で止まります。 ブレークポイント配置にまた失敗 …再開したはずが、同じくactionpackの行にブレークポイントを置こうとしてやっぱり失敗。 そうかーデバッグ実行中にブレークポイントの状態を、もしかして変更できない? 可能性あるなあ。VB.NETなら出来るんだけど。VisualStudioが偉大ということかしら。 という訳で、またもjavaw.exe→ruby.exeの順でプロセス強制終了。 あんまりやると壊れるよね。 今回はステップリターンで素直に戻る ちょっとずつ目視で確認

    Aptana Studioの練習 ActiverScaffoldの動作解析(Search編) 続き - 河童Blog 〜 30過ぎてもソフト開発 〜
  • takeda-soft.jp

    takeda-soft.jp 2024 著作権. 不許複製 プライバシーポリシー

    katow
    katow 2009/02/01
    RDocを日本語のHTMLとして出力する方法。まだ当分RDocまでは手が出ないけど…覚えておきます。
  • ActiveScaffold::search が遅い - /home/autch/*scratch*

    ActiveScaffold を覚えたので、調子に乗って自宅鯖にある某ラジオ局の ON AIR 履歴一覧を Rails で書き直してみた。 2001 年から蓄積した 84 万曲の履歴から、最新のものを一覧表示する。5 分更新。 ここで ActiveScaffold の Search アクションを使って検索ボックスを実装したのだが、前方一致検索にしたのに数秒単位で時間がかかる。 データベースには index を張ってあるのになぜ? と思い、Rails のログからクエリを取り出してみると、 SELECT count(*) AS count_all FROM `songs` WHERE ((LOWER(songs.`artist`) LIKE 'kotoko%' OR LOWER(songs.`title`) LIKE 'kotoko%')) 大小文字に関係なくマッチさせるために、条件の左辺に

    ActiveScaffold::search が遅い - /home/autch/*scratch*
    katow
    katow 2009/01/31
    searchが遅い件で、余計な処理をかけていた部分を外して対処した事例。
  • テニスの取得ゲーム状況 - Smalltalkのtは小文字です

    キミのコードが汚い理由 − @IT をうけた、Haskell 脳その他の方々による Ruby 版などを拝見。 sshi.Continual - 美しいコード? 趣味的にっき - テニスの勝負判定コード Tommy Heartbeat 2nd - 美しいプログラムコードとは。 バカが征く - めんどいからRubyで書くけど… それぞれに興味深かったので、私なりのメッセージング脳だとどのようになるのか、Smalltalk 版と、それをほぼ直訳した Ruby 版を書いてみました。 まずベースとなる Smalltalk 版をメタ情報を除いた加工コードで(ファイルイン不可)。 Object subclass: #TennisSetScorer instanceVariableNames: 'games' TennisSetScorer >> initialize games := Dictionar

    テニスの取得ゲーム状況 - Smalltalkのtは小文字です
    katow
    katow 2009/01/31
    >class Array; def at_rand; self[rand(size)] end end
  • takeda-soft.jp - takeda soft リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    katow
    katow 2009/01/31
    Fakerとerbでテストデータを作成する方法、例のArray.at_randが私の環境では無かったのでarr[rand(arr.length)]で代用した
  • ActiveScaffoldの地域化 - 2008-08-12 - ククログ

    現在、Railsに対応した国際化の仕組みがいくつかあります。しかし、それぞれが 独自の方法で実現しているため、それらを組み合わせて使うと混沌 とした状態に陥ることも少なくありません。 ここでは、モデルから動的にきれいな画面とコントローラ部分を生 成するActiveScaffoldを用 いた場合の国際化(i18n)と地域化(l10n)の実現方法のひとつを 紹介します。この方法では、 ActiveScaffoldLocalize と Ruby-GetText-Package を組み合わせます。混沌とする部分はそれなりになじませます。 国際化の仕組み Railsで使用できる国際化の仕組みの比較はRails Wiki (英語)が詳しいです。 Ruby-GetText-Package には、以下のような地域化対象のメンテナン スのことを考慮した機能があるので、地域化対象メッセージが増加 したり更新さ

    ActiveScaffoldの地域化 - 2008-08-12 - ククログ
    katow
    katow 2009/01/30
    ActiveScaffoldと他機能を上手に日本語化するためのアイデア。どっかで試させていただきます。
  • 橋本商会 » Rails + Physical Computingする時の注意点

    最近まわりでRailsが流行っているんだけど、なんだか2ケタ以上の人が「webサービスと何か(?)をするにはRuby on Railsを使えば全部できる」という盛大な勘違いを起こしているので説明用資料を書いておく。Railsはそんなに万能ではないです。 Railsはwebアプリケーションを簡単に作れるMVCフレームワークで、HTTPを通してwebブラウザから使う事を前提にしている。マイコンとProcessingを接続してガジェットを作るのとは別の常識があります。 ■Railsが向いていること Railsは、おおざっぱに列挙するとこんなアプリケーションに向いています(無理すれば変な事も可能だけど後述) アクセスしたURLに応じて異なるHTMLやXMLが表示される 後ろにSQLなどのデータベースがあって、データを溜めたり取り出したりする ユーザ登録してログイン/ログアウトできて、同じURLでも

    katow
    katow 2009/01/12
    すごくイメージしやすい説明。実際Railsだけで全アプリは確かに無理だから、定期バッチ処理とか別で実装して初めて1個のシステムになりますよね。
  • 第4回 Railsで作るOpenID対応アプリケーション実践(前編) | gihyo.jp

    はじめに 今回はいよいよ、アプリケーションを作りながら、OpenIDの実践的な使い方を解説します。サンプルとして作成するアプリケーションは、ミニブログと呼ばれるつぶやきブログです。いわゆるTwitterクローンです。利用者はミニブログにログインして、一言つぶやきます。ブログの一種ですので、当然ユーザ認証が必要になります。普通はパスワードを用いた認証が一般的ですが、今回はOpenIDを用いてユーザを認証するようにアプリケーションを作成していきます。 さて、認証と簡単に言いましたが、認証に必要となる機能をもう少し具体的に列挙してみましょう。 ユーザ登録 サービスを利用するために必要な情報(IDやメールアドレスなど)を利用者に入力してもらい、データベースへ登録する。 ログイン(認証) 利用者が入力した認証情報(パスワードなど)を元に利用者を認証し、ログインの可否を判定する。ログインに成功した利用

    第4回 Railsで作るOpenID対応アプリケーション実践(前編) | gihyo.jp
    katow
    katow 2009/01/11
    Railsでミニブログを作る例を探していたら、OpenIDや最近の認証プラグインまとめ情報もあってうれしい。
  • Rails を使用しない ActiveRecord + Migrate - chaotic valkyrie

    メモ代わり。 ActiveRecord require 'rubygems' require 'active_record' ActiveRecord::Base.establish_connection( :adapter => 'postgresql', :host => 'localhost', :username => 'foo', :database => 'baz', :encoding => 'utf8' ) class User < ActiveRecord::Base end User.find(:all).each do |u| p u end Migrate Rakefile ほんとは設定ファイルわけたほうがいいんだけどね require 'rubygems' require 'active_record' require 'logger' ActiveRecord:

    Rails を使用しない ActiveRecord + Migrate - chaotic valkyrie
    katow
    katow 2008/12/28
    Railsを使わずDBメンテ。何かに転用できそうなのでメモメモ
  • RailsとMerbの合流についてあれこれ - アンカテ

    これって、ある意味、オープンソースプロジェクトの凄みが見えてくるすごく衝撃的なニュースです。そこで、なるべく、IT業界に関係ない人にもわかるように、このニュースの意味をいくつかの側面から考えてみたいと思います。 ビジネスではあり得ないことが起きた まず何が起きたのかひとことで言うと、RailsというプロジェクトがMerbというプロジェクトと合流して、次のバージョンを共同で開発することを発表したということです。 Rails 3高速化Merb技術採用、Rails 2非互換の可能性 | エンタープライズ | マイコミジャーナル 簡単に言えば、Windowsの次期バージョンをMac OSXベースで開発することになったようなものかな。 Ruby on Railsは、「RubyのWebアプリ開発用フレームワーク」というジャンルで一番メジャーなソフトです。その分野に関係する人ならば誰も知らない人がいない

    RailsとMerbの合流についてあれこれ - アンカテ
  • RubyによるビルドツールRakeの覚え書き

    RubyによるビルドツールRakeの覚え書き。興に乗ったので詳しく書いてみた。 2014/02/20 Rakeの作者、Jim Weirich氏が亡くなられました。安らかに… Rakeとは? インストール 単純なRakefile タスク ファイルタスク ルール ディレクトリ作成 タスクの説明 ファイルリスト クリーニング パッケージ作成 タスクの動的生成 テストタスク 複数のRakefileの連携 名前空間 参考URL Rakeとは? Rakeは、MakeをRubyで実装したものを超越したビルドツールである。 世間では、ビルドツールというとMakeやApache Antが有名で、よく使われている。 Rakeは、これらのいいとこ取りをした上で、特有のフィーチャーを追加した新しいビルドツールであり、複雑なビルドを柔軟に書きこなすことができる。その秘密は内部DSLという仕組みにあり、このおかげでビ

    katow
    katow 2008/12/23
    Rakefileの利用について詳細解説。Makefileすら覚える気がなかった、20台の自分…いやいや今回は覚えたいぞ
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Apache2 mod_ruby + ERB (Windows) - はらぐろブログラマン

    別にrubyオンリーなウェブアプリでいいならrails使えばいいんだけど、 メインはjsp、面倒くさいとこだけrubyでやりたいとかいう状況になったので。 rubyマニアじゃなければ、普通にphpつかっときましょう(笑 前提条件 C:\rubyrubyがインストール済み ERBも入っていること。rails入れていれば入っているはず。 Apache2がインストール済み。パスを以後、${Apache}と表記。 手順 mod_rubyをダウンロード http://rtokiwa.s55.xrea.com/wiki/index.php?mod_ruby_win32bin mod_ruby.so,mod_ruby-*-mswin32.pdbを${Apache}/modulesへコピー lib/を${Apache}/mod_ruby/へコピー ${Apache}/mod_ruby/は、ないとおもうの

    katow
    katow 2008/12/21
    やっぱりmod_rubyあるんだ。
  • http://curb.rubyforge.org/

    katow
    katow 2008/12/18
    Curb - libcurl bindings for ruby のリファレンス
  • rubyでwebにアクセスするライブラリ、何使う? - おもしろwebサービス開発日記

    rubyでwebにアクセスするライブラリが複数あります。 標準のライブラリ open-uri Net::HTTP gemライブラリ mechanize curb(curl) どんなときにどれを使ったらいいんでしょうね?ということで簡単にですがそれぞれの特徴を調べてみました。 open-uri この中で一番簡単なライブラリ。openメソッドを拡張して、webページを普通のファイルのようにオープンできるようにします。詳しい使い方は下記参考。 open-uri - Rubyリファレンスマニュアル Net::HTTP getの他にpostやリダイレクトにも対応。下記のように、ブロックの中でサーバ内のコンテンツにアクセスするように書くので、同一サーバに何度もアクセスする場合はopen-uriより便利。 require 'net/http' Net::HTTP.version_1_2 Net::HTT

    rubyでwebにアクセスするライブラリ、何使う? - おもしろwebサービス開発日記
    katow
    katow 2008/12/18
    curb、というRubyでのcURLライブラリ。gem配布。がある、との事。