This domain may be for sale!
*既存のDBを用いてRailsアプリケーションを立ち上げる Railsでは、ヘルプや本の手順どおり構築しようとすると、DBは新たに新規作成するパターンで教わる。 でも実際の仕事ではDB設計が先→Railsアプリケーションが後、も当たり前のように必要となるため、その手順について調べてみた。 ちなみにテスト環境は、AptanaStudio + InstantRails1.7 、よってDBはMySQLです。 *大まかな手順 **既存のDBからスキーマ情報を取り込む Railsの rake コマンドには、構築済みDBのスキーマ情報をRails表現で吸い出してくれるコマンドがある。 http://tam.qmix.org/wiki/Migration.html ***手順 ※データベース名を db1 とする +Rails Project を作成 (プロジェクト名:sample とする) +datab
Apache+mod_rails環境で、公開時は認証不要の画面だが、テスト中なのでアクセス制限のためにbasic/digest認証を使用したい。 httpd.confのDirectoryディレクティブにRailsのpublicディレクトリを指定してBasic認証を設定すると、Railsのpublicディレクトリに置いた静的なhtmlだけが認証の対象になり、アプリ全体が認証の対象になりませんでした。 Locationディレクティブならばアプリ全体の認証に対して認証が有効になるようです。 <VirtualHost *> ServerName example.com DocumentRoot /var/www/example.com/railsroot/public <Location /> AuthType Digest AuthName "On Testing" AuthDigestProv
「構造のきれいなプログラムを書けるようになるためにはどうすればいいのか?」という質問を受けたので、「はて?どうしているだろうか?」と考えてみました。あ、形式知にきちんとなっているようなテクニックみたいなもんじゃなくて、モノローグなので、あまり凝ったものは期待しないように。 http://blog.shibu.jp/article/28983162.html 自分なりにもっと凝縮版を。渋川さんが言っている事全体もその通りとは思うけど*1、もっと簡単で、しかも射程が広い、と自分が思っている事。 渋川さんはちょろっと触れてるだけだけど、自分はこれが最も基本的で汎用的、かつ、ソースをきれいにする原動力となる上にバグをも減らしてコードの汎用性まであげる、コーディングのエンジンみたいなものと思ってる。それは、 「すべてに正しい名前を付けて、そして、正しい名前であることを維持する」という鉄の意志 クラス
プログラミングを始めてから今日に至るまで、 様々なタイプのプログラマーと開発を共にしてきたが、 驚くべき速度で高い品質のソフトウェアを作り上げるプログラマーには、 一つ共通の特徴があるように思える。 それは、「はまる」時間が極端に短い、ということである。 風のプログラマー」を指向しており、開発速度を重要視している。 例えば平成14年未踏ソフトウェア創造事業「PICSY」では、 発表直前に知人でプロジェクトリーダーの鈴木健にレスキュー隊として呼ばれて 2,3日でGUI全般と、クライアント/サーバー通信部分の設計と実装を終わらせたのだが、 このときなどは、大体の要件を口頭で聞いた後は、 ほぼまったく手が止まらずコードを書き続ける感じで開発をしていた。 「はまる」時間の長さは開発速度に直結するわけだが、 プログラマーが「はまる」場合にはある程度の傾向があると思うので、 今日は「はまる」プログラマ
このエントリでは Ruby on Rails と MySQL を使って日本語の全文検索を行う方法を記述する。Ruby on Rails のバージョンは 2.0.2、MySQL のバージョンは 5.0.67、Tritonn のバージョンは 1.0.12、Hyper Estraier のバージョンは 1.4.10 を使用した。サンプルの文章データとして、あらゆる日本人にとって極めて身近な著作権切れ文章である『ドグラ・マグラ』と『黒死館殺人事件』を利用した。処理のために整形したデータは本エントリに添付しておく。またデータベースへアクセスするコードではマイグレーションを除きできるだけベンチマークを取るようにし、その結果は本エントリの最後に記載する。 ページネーション Rails でページネーションを実現する will_paginate という plugin は ActiveRecord に標準でつ
ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も) OpenOfficeの話で、いままで印刷とデータベースの話を書いたので、2つあわせて データベース(Base)の内容を、表計算(Calc)に書いて印刷するマクロについて取り上げてみます。 ■仕様 ●C:¥temp¥テスト.ods(¥は、本当は半角)にあるOpenOffice Calc(表計算)の"テスト"というシートを開き、 ●データベース名が"テスト用"という名前の、データベースをアクセスして、 "Select * From 顧客テーブル" を実行して、顧客テーブルの内容を受け取り ●DBの内容を 1項目目をA桁、 2項目目をB桁、 3項目目をC桁、 4項目目をD桁、 に、1行目から、1レコードづつ、順に、上記の「テスト」というシートに書いて 印刷する ■ソース ソースはこんな
Japanese / English JavaScriptで入力補完を手軽に行うためのライブラリです。 (【お知らせ】ver2.0からprototype.jsを必要としなくなりました) 下記のような機能を持っています。 入力内容をもとに検索を行い、補完候補を表示します。(Google Suggestぽく) Ajaxでは無く、初回画面表示時のみデータの読み込みを行い、それ以降は、クライアント側で対象データから検索します。したがって、入力内容に変化があってもサーバ側にアクセスすることはありません。 検索は、前方一致/部分一致、大文字と小文字の区別あり/なしといったように、オプションで簡単に指定できます。また、その他にも様々なオプションが指定可能です。 検索結果の表示上限を指定できます。(デフォルト上限20件) 補完候補はキーボードの上下と、マウスにて選択できます。また、キーボードで選択中にES
autotestのGrowl通知をカスタマイズする Ruby on Rails 以下の設定ファイルでGrowlを有効にしたautotestは、テスト結果をGrowlメッセージとして教えてくれるのでとても快適なのだが、いくつか気になる点も出てきた。 # autotest設定ファイル: ~/.autotest require 'autotest/growl' 現状では、failuresやerrorsが発生した時は毎回Growlメッセージが通知されるが、テストが成功を繰り返す場合は何も通知されない。 成功している状態は当然の状況なのだから、この仕様は無駄が無くて良いのだが、テストに不慣れな現状では、毎回テスト結果を通知して欲しい気分だ。 通知されるGrowlメッセージは「Test Failed」か「Test Passed」なので、failuresとerrorsの件数はターミナルのテスト結果を見る
ここまで、テストコードの実験のような気持ちでunitテスト、functionalテストと試してきた。それぞれのテストを実行する為には、rake test:units、またはrake test/functionalsとターミナルから入力して実行していた。しばらくすると、このコマンドはテストコードを書いたり、ソースコードを編集したら、常に繰り返し実行する運命にあることに気付いた。そして、なるべく短いサイクルで実施しておいた方が、問題が発生した時にその原因を特定し易くなるはずだ、ということも。 そのような経緯からか、Railsではシンプルに「rake」と入力して実行すると、testフォルダ以下のすべてのテストを実行する仕組みになっていた。(現状で「rake」を実行すると、unitテスト、functionalテスト両方の結果が表示された。) ところが、さらに暫く使い続けていると、この「rake」と
なんかautotestが流行りつつある今日この頃ですが、みなさまいかがお過ごしでしょうか。とりあえず丁度うちの会社でも自動テストしようかーみたいな話がでてたので構築してみましたよ! ZenTestのインストール とりあえずは定番のZenTest(autotest)とRedGreen(結果の色付け)をインストールします。 $ sudo gem install ZenTest $ sudo gem install RedGreen 次にautotestの設定ファイルの作成。exampledotautotest.rbのパスは人によって違うと思うので適当に読み替えてください。 cp /opt/local/lib/ruby/gems/1.8/gems/ZenTest-3.9.1/example_dot_autotest.rb ~/.autotest ~/.autotestの15行目のコメントアウトを
MySQL 5.1からデフォルトで有効になっている便利な機能としてプロファイリングというものがある。MySQL 5.0でも利用出来たのだが、実験的な機能という位置づけであり、搭載されていたのはGPL版のMySQL Community Server限定だった。MySQL 5.1からは全てのエディションでプロファイリングを利用することができる。 プロファイリング機能を利用すると、クエリの状態(特に状態遷移やリソースの消費状況)を詳細に分析できるのでとても便利だ。MySQLエンジニア必携の機能といって良いだろう。というわけでプロファイリング機能の使い方を説明しよう。 MySQLサーバにログインしたら、まずは次のようにしてプロファイリングを有効にする。 mysql> SET profiling=1; すると、クエリの情報が記録されるようになる。次に、分析したいクエリを実行する。クエリはなんでもいい
Photo by pnoeric いま、PhotoShareで使うために、高速なEvent Driven方式のネットワークライブラリ、EventMachineを調べています。 このEventMachine、ほとんどの場合はサーバを作るときに使われていますが、HTTPクライアントの機能も実装されており、実はクローラの様な物を作るときにも利用することができます。 今回はこっちを使いたかったのですが、ググってもほとんど情報が出てこなかったので、Seattle.rbで相談したところ、Aaronさん(RubyKaigi 2008でプレゼンしているのをustで見てコンタクトしました)からサンプルが貰えたので、それを元に、同時接続する様にしてみました。 このコードだけだと役には立ちませんが、情報が少なかったので参考に上げておきます。 require 'rubygems' require 'eventma
Do that 100 times; each total has 1% probability, and now you can figure out the probability that you will ship on any given date. Now watch what happens: In the case of the mythical perfect estimator, all velocities are 1. Dividing by a velocity which is always 1 has no effect. Thus, all rounds of the simulation give the same ship date, and that ship date has 100% probability. Just like in the fa
編集 or 閲覧するには パスワードをかけてもSpamが減らないし私自身が対応できないので、ちょっと強硬策を取ることとしました。 閲覧でも同じパスワードをかけさせていただきました。 不便になりますが、ご了承くださいませ。 簡易に編集できるようにとこれまでパスワードなどをかけておりませんでしたが、あまりにもspamが多いのでパスワードをかけることにしました。 ユーザー名:meadow パスワード:memo で編集できますので、編集の都度、入力ください。 この状態でspamが増えるようなら、適当にパスワードなどを変えていきますので、ここをチェックくださいませ。 ↑ はじめに このページは Emacs 電子書棚のWiki です.Meadowの設定などの解説は Meadow/Emacs Memo にありますので,そちらをまず参照してください. 一応,Meadow memo Wiki ということで
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く