parabola のユーザ認証を LoginEngine 化
ナニなシステム構築中なんですが、RSS は rails 使用とゆー事で parabola 採用。
試しに入れて試そうとしたんですが、事前調査でいくつか不具合出そうなアレが。要件としては現在作成中なカレンダなアプリと DB を共用という事。以下が微妙な部分。
- カブっているテーブルがある。
- ログインな実装が parabola は独自ぽい
まず、テーブルの件。カブってるのは以下。
-
- users
- tags
解としては両方共用する事に。parabola ん中にある db/schema.rb をパクって migrate なナニを作成してやれ、と parabola の中で script/generate migration したらファイル名が微妙。
RoR は異なるプロジェクトで DB を使いマワす、という要件に対応していないのかなぁ。schema_info なテーブル見てるはずなんですが、イチから採番されている模様。ただ、良く考えるとアプグレイド/ダウングレイドなナニの時にワケワカな状態になりそ。
なので、db/migrate はどこか一つトコロに纏めた方が良いだろな、という結論に。
次、ログインについて。
parabola では、lib に login_system.rb というファイルがあり、それが一切の面倒を見ている模様 (あ、勿論 controller やら model もあり)。そのまま転用可能かと思い、試しに動かしてみたけど NG の模様。
コードを弄くった方が勉強になるのでしょうが、マンドクセぇので LoginEngine を入れる、という解を選択。以下。
- script/plugin install engines
- script/plugin install login_engine
- app/controllers/application.rb 修正
- config/environment.rb 修正
- app/helper/application_helper.rb 修正
- app/models/user.rb の削除
- lib/login_system.rb も削除して OK
このあたりはLoginEngineを使ってみるのそのマンマですな。
以上で認証の処理は動作し、parabola のトップが出ました。(本当は不要なファイルは削除すべき)
これ (parabola)、フィードの登録がアレらしいので実装が必要だったり。そして次は typo について同様の検証をせねばならぬ。
追記
pandola のインストールについては略しましたが、svn://lotus.aeonblue.dk/parabola/tags/release-0.4 を co して gem install feedtools --include-dependencies して、vendor/rails に 1.1 系なナニを仕込んだだけ、だと思います。(acts_as_taggable はスデに入っていましたので)
追記 2
ログアウトしたらオチた。
AccountController クラスに before_filter 指定あり。削除。
試験環境にデプロイする前にフィードの登録の方法を調べねば。(何