Rails1.2.3でUser Engineの利用

http://rubyist.g.hatena.ne.jp/pulscope/20070327/p1のおかげでEnginesとLogin Engineは使えるようになったんですが、User Engineも使いたいってことで、以下その利用法。
Railsのバージョンはもちろん1.2.3です。

プラグインのインストール

まずはプラグインのインストール

$ script/plugin discover
$ script/plugin install engines
$ script/plugin install login_engine
$ script/plugin install user_engine

プラグインのロード

続いて、プラグインのロードです。
config/environment.rb

Rails::Initializer.run do |config|
  config.plugins = [ "engines", "*" ]
end

Login EngineおよびUser Engineの設定

まず、configメソッドを呼ぶためにenvironment.rbに以下を追記

require File.join(RAILS_ROOT, "vendor", "plugins", "engines", "lib", "engines", "deprecated_config_support")

そして、Login Engineの設定
config/environment.rb

module LoginEngine
  config :salt, "<salt>"
  config :app_name, "<app_name>"
  config :use_email_notification, false
  config :user_table, "users"
end

ここまでは、http://rubyist.g.hatena.ne.jp/pulscope/20070327/p1に詳しく書かれています。

そしてここからUser Engineの設定です。
config/environment.rb

module Engines
  config :root, RAILS_ROOT + "/vendor/plugins"
end

module UserEngine
  config :role_table, "roles"
  config :permission_table, "permissions"
  config :user_role_table, "users_roles"
  config :permission_role_table, "permissions_roles"
  config :guest_role_name, "Guest"
  config :user_role_name, "User"
  config :admin_role_name, "Admin"
  config :admin_login, "<admin_name>"
  config :admin_email, "<admin_email_address>"
  config :admin_password, "<admin_password>"
end

require 'user_engine'

UserEngine.check_system_roles

configでいろいろ書いてるのはほとんどマイグレーションのためです。
roleとかpermissionのテーブル名を書いてあげないとエラーが出ます。
また、<>で括っているところは各自で適当な文字列を入れてください。

User Engineのマイグレーション

まずはマイグレーションファイルの作成

$ script/generate plugin_migration

で、マイグレーションファイルができます。
そして、マイグレーションです。

$ rake db:migrate

これで、マイグレーション完了ですが、User Engineではroleやpermissionの設定のために以下を実行します。

$ rake bootstrap

このときに、さきほど設定したadminのユーザも追加されます。

Controller, Helperの設定

User Engineを利用するためにControllerとHelperに以下を記述します。
app/controller/application.rb

require 'login_engine'

class ApplicationController < ActionController::Base
  before_filter :authorize_action

  include LoginEngine
  include UserEngine
  helper :user
  model :user
end

app/helper/application.rb

module ApplicationHelper
  include LoginEngine
  include UserEngine
end

おわり

以上で設定終了です。
Raisが以前のバージョンの場合と同様にUser Engineが利用できるはずです。
何か間違いなどありましたら言ってください。