UI特許取得を避けるために書いておきます。 クリック/タップでボタンを外した場合に、もう一挑戦してまた外れた場合、タップ地点の近くにあるボタンなどのUI要素をクリック/タップしたことにすると便利だと思います。 3回失敗、4回失敗するごとに、徐々に探索半径を広げていっても良いかもしれません。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
zshの環境変数を設定する場合はzshrcなどに記述すれば良いのですが、GUIアプリケーションを制御するために環境変数を設定する必要がある場合には、 以下のように ~/.MacOSX/environment.plist ファイルに設定を記述する必要があるようです。 ~/.MacOSX/environment.plist 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 3 <plist version="1.0"> 4 <dict> 5 <key>MAYA_UI_LANGUAGE</key> 6 <string>en_US
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Railsにおけるrestful_authenticationやMerbのビルトイン認証機構に比べると、Sinatraには「とりあえずこれを使っておけ」というような認証ライブラリが無いような気がします。強いて言えばRack::Auth::Basicかな。ちょっと機能不足のように感じます。 という事で、Sinatraで使える認証用ライブラリをリストアップ。 Rack::Auth::Basic Basic認証をする。 Rack::Auth::Digest 同様にDigest認証を行う。 Rack::Auth::OpenID OpenIDを使って認証。ruby-openidが必要。 Rack::Auth::OpenIDAuth 同
SVNリポジトリ上に存在する複数のブランチやtrunkの間で、 変更点をマージしたりする方法のメモです。 まず、これからSVNリポジトリをgit svn cloneすると言う場合は、以下のような オプションを指定して実行します。 これで、SVNリポジトリ上のtrunk, branches, tagsをGitのbranchとして全て取り込んだ状態でcloneが実行されます。 git-svnでcloneした既存のWorking copyが手元にあって、 そこに別なbranchやtrunkを追加したい場合は、以下のように.git/config ファイルに項目を加えます。 1 [svn-remote "svn"] 2 url = http://svn.repos.com/foo/branches/bar 3 fetch = :refs/remotes/git-svn 4 [svn-remo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 最近流行っているBDD(振舞駆動開発)というものをやってみたかったので、RSpecとZenTestをインストールしてみた。 環境 Ubuntu 8.04 JRuby 1.1.4 Rails 2.1.1 MySQL 5.0.51a RSpec 1.1.4 RSpecをインストール。 gem install rspec Railsプロジェクトを作成。 jruby -S rails data_conversion -d mysql RSpecをRailsで使うためのプラグインをインストール。 RSpecやRailsのバージョンによって、インストールするリポジトリが変わるので注意。詳しくはrspec-railsのWikiを参照。 jru
Rails-2.0.2以降から存在するBasic認証機能ですが、 この挙動をテストする方法をメモしておきます。 1 request.env['HTTP_AUTHORIZATION'] = 2 'Basic ' + Base64::encode64("name:password")
Capistrano-2.1を使って、Gitリポジトリからデプロイする為のレシピファイルの書き方のメモです。 config/deploy.rb 1 set :application, "goodstuff" 2 set :scm, :git 3 set :repository, "git.foo.com:/path/to/#{application}.git" 4 set :branch, 'master' 5 set :deploy_via, :copy 6 set :deploy_to, "/mnt/app/#{application}" 7 set :user, "app" 8 (--snip--)
This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/55 RailsCronプラグインを利用すると、定期的に繰り返される処理を簡単に実装する事ができます。 普通はこのような事を実現する為に cron を使う事が多いと思いますが、Railsアプリケーションは起動しっぱなしで使う事が多いので、こういう方法もありですね。 使い方はいたって簡単です。まずはプラグインをインストールします。 ./script/plugin install -c http://svn.kylemaxwell.com/rails_cron/trunk/ 続いて、lib/cron.rb を記述します。 module Cron def Cron.create_do_something_cron RailsCron.crea
このところ、named_scope関係のバグの原因と対処法を調べるために ActiveRecordのEager Loadingの実装を調べていました。 ActiveRecordのEager Loadingは、 Rails2.1から、若干生成するSQLが変化しています。 Rails 2.1 Eager Loading 上記サイトでも紹介されているように、 今まではLEFT OUTER JOINを使って、 一回のクエリで全て読み込むようなSQLを生成していたのですが、 Rails2.1からは、複数回のクエリに分割するようになりました。 ということで、Eager Loadingを実際にやっているコードを調べてみたのですが、自分で好きなタイミングでEager Loadingを行う方法を見つけたので紹介します。 ActiveRecord::BaseクラスのprotectedメソッドActiveRec
RubyProfを使って、Railsアプリのプロファイリングをする方法を紹介します。 まずは、ruby-profをGemでインストールします。 インストールが完了したら、ruby-profプラグインをRailsアプリにインストールします。 ruby-profプラグインは、Gemがインストールされたディレクトリの下にあります。 環境によって場所は変わりますが、例えば/usr/local/lib/ruby/gems/1.8/gems/ruby-prof-0.6.0/rails_plugin/ruby-profなどの場所にあります。 これをvendor/plugins/ruby-profにコピーすれば設定は完了です。 あとはproduction環境でRailsアプリにアクセスすると、以下のようなログが出力されます。 1 Thread ID: 3076980460 2 Total: 2.030
RaPT は、Ruby on Railsのプラグインを管理するためのツールです。 RaPT is a replacement for the plugin script included with the Rails distribution. It's a little more fault-tolerant and featured than the default plugin script. The main additional feature is the ability to search for Rails plugins from the command line. なんとなく、名前がdebianのaptに似てると思うのは僕だけでしょうか。 以前から、RailsプラグインにもRubyGemsに相当するような パッケージ管理ツールがほしいと思っていたのですが、 これを使えば
annotate_models は、テーブルの情報をModelとFixtureのファイルに コメントとして書き込んでくれる非常に便利なプラグインです。 永く愛用しているプラグインの一つなのですが、 しばらくメンテナンスされていないようなので、 欲しいと思っていたindexに関する情報も出力するようにしてみました。 http://svn.s21g.com/public/rails/plugins/annotate_models_with_index/ こんな感じに、インデックス情報をカラムごとに付加します。 1 # == Schema Information 2 # Schema version: 48 3 # 4 # Table name: users 5 # 6 # id :integer(11) not null, primary key 7 (* snip *) 8
比嘉さんからciteされたみたいなので、取り急ぎ新しい情報を吐き出しておこうと思います。 そろろろRailsについて本音を書いてみるか 後、デバッグの環境は、Javaに比べて貧弱だと思う。Railsでデバッグをする7つの方法を見てほしい。IDEでソースにブレークポイントを設定(ソースコードを書き換えるのではなく)して、ステップイン、ステップオーバー、メモリの状態を見たりなんてのに慣れているJavaから比べると、すっごく大変に見える。 喜ばしいことに、Rails 2.0ではruby-debugを使ったdebuggerが正式に採用されました。 これの使い方は非常に簡単です。 まずは、以下のようにブレークポイントをコード中に書き込みます。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く