2009年1月17日土曜日

grailsのごにょごにょ

今日やった事をまとめてみる。
__
アプリ作成

grails create-app hoge

hogeというからっぽのアプリひな形が作成される。

__
ドメイン作成

必要なフィールドを作成する

アイテムという名前のドメインを作成
grails create-domain-class item

※大文字小文字には注意すべし。

__
コントローラー作成
作成したドメインのコントローラーを作成する。

ドメインitemのコントローラー作成。
grails create-controller item

__
ドメインに要素を書き込む。

class Item {
String title //タイトル
}

文字列が入る title という変数を入れました。
__
コントローラーをスキャッフォルドしてとりあえず動くように

コントローラーファイルの中身を変更する。
fattyはNetBeansというIDEを使用してるのでそこからコントローラーのファイルを開き

class ItemController {

def scaffold = true
}

こんな感じに書き換える。
__
とりあえず動かしてみる。

えい!run-app!

動きました。

スキャッフォルドによってCRUD (Create, Read, Update, Delete)が作成されてます。

__
認証をつける

acegiプラグインという認証をサクっとできるようにしてくれる素敵プラグインをインストールする。

grails install-plugin /down/grails/plugin/grails-acegi-0.3.zip

fattyの場合acegiプラグインが入っているフォルダが/down/grails/plugin/の中なので
こうなってますが、プラグインがおいてある場所を指定してやればokです。


エンターを押すとずらずらーっとインストールが流れます。

インストールが終わると

Loading with installed plug-ins: ["acegi"] ...
Executing acegi-0.3 plugin post-install script ...
Plugin acegi-0.3 installed
Plug-in provides the following new scripts:
------------------------------------------
grails create-auth-domains
grails generate-manager
grails generate-registration
grails security-targets

こんなメッセージがでます。

インストールしただけだとファイルが入っただけなのでつかえる様にするために
上記grailsから始まるコマンドを打ち込みます。

つらつら〜

っと終わりました。

これで完了。


RoleController=役割発行所。一般ユーザならuser、管理者ならadminという名前の権限を与える。

UserController=まんまユーザーを作成するところ。Roleで発行した権限を加えて、アクセスするIDカード的な物を発行する。

RequestmapController=管理したいページを設定するところ。Roleで設定したどの権限まで入れるかをurlを指定して制限する。

設定をしたらレッツ認証!
リクエストマップで指定したページへいくと認証画面が出てくるので
ユーザで設定したユーザ名とパスワードを入力するとページに入れるという仕組み。

あら簡単。
__
I18n-templatesプラグインを入れて日本語化

詳しくはこちら。
■[Grails]好きなGrailsプラグインシリーズその1 i18n-templates

以上!fattyのグレイルズな一日でした。

疲れのせいか右目のまぶたがぴくぴくけいれんします。