2016-09-07 11 views

答えて

2

コマンドオブジェクトを使用する必要がありますか、ドメインオブジェクトを使用する必要がありますか。

ドメインオブジェクトは、データベースに保持するオブジェクトです。コマンドオブジェクトはドメインオブジェクトであってもよいが、必ずしもそうである必要はない。どのオブジェクトもコマンドオブジェクトとして使用できます。コマンドオブジェクトは、フレームワークに一連の作業(データバインディング、依存性注入、検証など)をさせる便利な方法です。

あなたは、このようなコントローラのアクション書くとき:

class SomeController { 
    def someAction(SomeCommand co) { 
     // your code here... 
    } 
} 

をコンパイラはこのような何か(擬似コード、しかし代表)が生成されます。

class SomeController { 
    def someAction(SomeCommand co) { 
     // your code here... 
    } 

    def someAction() { 
     SomeCommand co = new SomeCommand() 
     bindData co, request 

     // subject co to dependency injection 

     co.validate() 
     someAction(co) 
    } 
} 
+0

は、HTTPで私の答えを参照してください:// stackoverflowの.com/questions/23511688/grails-pass-arguments-to-controller-methods/23517706#23517706 –

関連する問題