投稿

2012の投稿を表示しています

Rails Devise認証のカスタマイズメモ

Deviseのデフォルトの認証ではDBに保存されているemail, passwordの項目で認証を行なっている。 例えば、DBにemail, passwordを別で認証する場合、カスタマイズが必要となる。 そのカスタマイズ方法を調査した内容を以下に記す。 ※omniauthを使った外部サイトで認証・callbackではないです。 バージョン情報  Rails 3.2.6  Devise 2.1.2 例  ・usersテーブルにログインユーザの情報を保持。  ・パスワードはDBに保持していない。(ここでは 'password' 固定) 1.認証処理の追加  Deviseでは認証処理はstrategyとして作成されている。  認証方法をカスタマイズするにはstrategyを新たに作成する。 ※以下の内容はDeviseのstrategy(database_authenticatable)を参考に、パスワード判定のみ変 更。 ・config/initializers/devise_strategies.rb require 'devise/strategies/authenticatable' module Devise module Strategies class CustomAuthenticatable < Authenticatable def authenticate! resource = valid_password? && mapping.to.find_for_database_authentication(authentication_hash) return fail(:invalid) unless resource if validate(resource){ password == 'password' } resource.after_database_authentication success!(resource) end end end end end Warden::Strategies.

映画の半券

イメージ
最近はヱヴァを観に来てる人が多い...

twitter-bootstrap-railsをサブディレクトリで動かす

twitter-bootstrap-railsをサブディレクトリで動かすとアイコンの読み込み先にサブディレクトリが含まれないので、やったことのメモ。 app/assets/stylesheets/bootstrap_overrides.css.lessのリネーム bootstrap_overrides.css.less を bootstrap_overrides.css.less .erb にリネーム bootstrap_overrides.css.less.erbを更新 @import "twitter/bootstrap/responsive"; // Set the correct sprite paths @iconSpriteAssetPath: asset-path('/twitter/bootstrap/glyphicons-halflings.png'); @iconSpritePath: `"<%= ActionController::Base.config.relative_url_root %>" + @{iconSpriteAssetPath}.replace('"', '')`; @iconWhiteSpriteAssetPath: asset-path('/twitter/bootstrap/glyphicons-halflings-white.png'); @iconWhiteSpritePath: `"<%= ActionController::Base.config.relative_url_root %>" + @{iconWhiteSpriteAssetPath}.replace('"', '')`; // Set the Font Awesome (Font Awesome is default. You can disable by commenting below lines) // Note: If you use asset_path() here, your compiled b

Ruby技術者認定試験 Gold 合格

イメージ
「Ruby技術者認定試験 Gold」合格しました。 一回落ちたし、

映画の半券

イメージ

Cloud Foundry サブディレクトリでアプリ公開

Cloud Foundryでアプリ公開するURLは <アプリ名>.<ドメイン名>になる。 READMEのサンプルでいうと env.vcap.me これを www.vcap.me/env のようにアプリ名のサブディレクトリでの公開はリバースプロキシを使用することで出来た。 READMEどおりにインストールした場合のnginx例: 変更前 ~/cloudfoundry/.deployments/devbox/deploy/nginx/nginx-0.8.54/conf/nginx.conf ・ ・ ・   upstream router_status {     server localhost:8081;   }   server {     listen       80;     server_name  _;     server_name_in_redirect off; ・ ・ ・ 変更後 ・ ・ ・   upstream router_status {     server localhost:8081;   }   server {     listen 80;     server_name www.vcap.me;     server_name_in_redirect off;     location /env {       proxy_pass http://env.vcap.me/;     }   }   server {     listen       80;     server_name  *.vcap.me;     server_name_in_redirect off; ・ ・ ・ www.vcap.me/envでリクエストが来た時にenv.vcap.meに転送されるのでサブディレクトリで公開している感じになる。 nginxの設定だけでCloud Foundryはあまり関係ないね。 これ以外にもCloud Foundryの外部URL(External URL)で出来そうなことは書いてあったけど・・・ 参考URL http://support.cloudfoundry.com/entr

Cloud Foundryで自分だけのPaaS

5日前くらいからCloud Foundryで遊んでます。  Cloud Foundryは簡単にいうとオープンソースで公開されているPaaS(Platform as a Service)。 なので、自分だけのPaaS構築が可能。 すごい・・・ 今はローカルでいろいろやってる最中です。 環境はこんな感じ。 Mac OSX Lion Virtual Box Ubuntu Server 10.04(Virtual Boxゲスト) Cloud Foundry(v0.999 Ubuntu Serverにインストール) Cloud FoundryはREADMEどおりにインストール。 直近の目標はVPSにCloud Foundryをインストールし、www.sysgreenplus.netサイトを載せ替える。

GALAXY S II 故障診断結果

イメージ
GALAXY S II帰って来ました。 診断結果は「異常なし」。 う~ん・・・

「jpyammer - Yammer for keitai」作成

イメージ
jpyammer - Yammer for keitai を作成しました。 エンタープライズSNS「Yammer」 https://www.yammer.com を日本の携帯電話から使用するためのゲートウェイアプリケーションです。 詳しい内容は こちら 。 ソースは こっち 。 Heroku向けに作成しており、無料範囲内での使用も可。 ただし、ガラケーはすでに持っていないのでテストはシュミレーター止まりです。 誰かよろしくお願いします。

GALAXY S II 故障診断

イメージ
GALAXY S II 故障診断に出しました。 各所で出ている「勝手に再起動する」現象が続いているから。 1週間前にFOMAカードを新しくし、初期化をしても現象が続くのでメーカー診断です。 治って帰ってくればいいな!(望み薄いけど) で、代替機は一世代前の「GALAXY S」です。 やっぱり動作が少し遅い( ;∀;)

Ruby, Rails の勉強

Railsを勉強するサイト・本を聞かれたのでまとめてみます。 自分が勉強した手順としては「たのしいRuby 第3版」を読んだ後、Railsアプリのチュートリアルをやりました。 ■Ruby ・参考書 「たのしいRuby 第3版」 初めてRubyを勉強した本。 ただし、本を見ながらコードを書いたわけではなく、読んだだけ。 コードを書くときに見直す程度。 ※他プログラム言語を触っている人はこの程度でOK 「Rubyレシピブック 第3版 303の技」 手元にあると役立つ本。 「メタプログラミングRuby」 ある程度Rubyをさわったかな?と思ったときに読むべき本。 コンパイラ型言語しか触ってなかったため、かなり衝撃を受けた。 「リファクタリング:Rubyエディション」 ある程度Rubyをさわったかな?と思ったときに読む本。 まだレベルが足りず、後半はよくわからなかった。 ・サイト 「Rubyist Magazine - るびま」 http://jp.rubyist.net/magazine/ 「最速Rubyリファレンスマニュアル検索! | るりまサーチ」 http://rurema.clear-code.com/ ■Ruby on Rails ・参考書 「Ruby on Rails 3 アプリケーションプログラミング」 この本がでる前からRails3を勉強し始めたが、いま見てみるとよくまとまった本だと思う。 「RailsによるアジャイルWebアプリケーション開発 第4版」 Rails作者が書いている本。 入門に使用するにはちょっと厚い。 「Rails3レシピブック 190の技」 手元にあると役立つ本。 ・サイト 「Ruby on Rails Guides」 http://guides.rubyonrails.org/ 「Ruby on Rails Tutorial」 http://ruby.railstutorial.org/ruby-on-rails-tutorial-book?version=3.2 「Ruby on Rails Screencasts - RailsCasts」 http://railscasts.com/

映画の半券

イメージ

jpdvbrec インストール方法更新

jpdvbrecのインストール方法等の情報を更新しました。 http://www.sysgreenplus.net

jpdvbrec リプレイス

イメージ
jpdvbrecを作り直しました。 jpdvbrecとはlinuxで動作するHDDレコーダのようなもの。 詳しくはこちら。 www.sysgreenplus.net 今回は以下のようなテーマをもって、作成しました。 RSpecでテストコードを書く Ruby on Rails 3.1で作成 スパゲッティなコードを書かない 前回はRuby on Rails初心者でとりあえず動くものを作成していったので、ソースがとっても汚いです。 今回は、テストコードを書きながら作成したので、そこそこ綺麗に書けたと思います。 けど、番組表部分は汚いままです。 約1年間、Ruby on Railsを独学で勉強して作り直したので、成長がよく見えます。 インストール手順については作成できていないので、とりあえずメモ。 OSはUbuntu Server 11.10 $ sudo apt-get install openssh-server $ sudo adduser rails $ sudo gpasswd -a rails admin $ sudo gpasswd -a rails video $ su - rails $ sudo apt-get install curl git-core $ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer) $ source .profile $ rvm version $ sudo apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev $ rvm install 1.9.2-p290 $ rvm use 1.9.2-p