2011-07-19 9 views
0

私はGrailのプロジェクトに取り組んでいます。このプロジェクトには、ドメインオブジェクトがデータベースに残っていないものがあります。これらはREST APIを介して管理されるため、CRUD操作はすべてデータベースではなくこのAPIを使用して行われます。Grailsのメモリドメインオブジェクトで作業する最良の方法は何ですか?

これは、興味深いGrailsプラグイン(Compassを使用した検索など)を使用できるということです。

たとえば、DomainオブジェクトUsersの管理はREST APIを使用して管理されるため、Usersリストが表示されると、リモートサーバーでユーザーリストを取得するRESTメソッドが呼び出されます。私はそれを設計するにはいくつかの方法で考えることができ、このユースケースは十分に明確である:)

願っていますが、私は最善だかわからないんだけど:

  • 私はコントローラでドメインオブジェクトを作成する必要があります(と以前のユーザーがメモリに保存されている を削除しますか?)
  • 永続的ではないドメインクラスを定義することは可能です( マッピングと思っています)が、これが最善の方法であるかわからない、またはデータをロードする場所が です。
  • Grails the UserをDomainオブジェクトとしてモデル化しない方が良いでしょうか?

ありがとうございます!

答えて

1

サービスでRESTインタラクションをラップし、コントローラからサービスを呼び出します。その場合、サービスは応答を取得してオブジェクトを作成し、リストをコントローラに戻します。コントローラは着信要求を処理し、アプリケーションコンポーネントを呼び出し、応答を返すだけです。

モデルが他のアプリケーションのデータを表現してほしいと思うので、これは良い考えです。 GORMは必要ないので、ドメインモデルフォルダの代わりにアプリケーションの 'groovy'フォルダに定義することができます。そして、私は彼らがただの目的であると思う。

+0

情報をありがとう、検索プラグインのGORMが必要だと思っていない限り、私はそれを試してみましょう。私はこのアプローチを使用して、実際のものの代わりにデータベースとしてメモリを使用することができると思います。検索プラグインはうまく動作するようです。 – pestades

1

srcフォルダにドメイン以外のオブジェクトがあると思いますが、上記のプラグインを使用できるかどうかを確認する必要があります。

非永続クラスからどのようなドメインクラスの機能を使いたいのだろうか?

+0

ありがとうございます。しかし、私は推測するように、これはplugginsとはうまく動作しません。 非永続的なドメインオブジェクトについては、私は私の質問で説明しているように(CRUDはREST操作を使って管理されています) – pestades

+0

あなたはどんなプラグインを使用していますか?それともあなたはまだ不明ですか? –

+0

最終的な決定ではなく、少なくとも検索とセキュリティのプラグインについてはわかりません。私は簡単なテストをしようとしますが、私はドメインオブジェクトが動作しないと思う。 – pestades

関連する問題