モデルでパラメーターを取得する方法 (Grails) ? params.
モデルには存在しません。
3 に答える
4
「モデル」がドメイン モデル クラスを意味する場合、それらにはパラメーターがなく、単なる POJO です。私の知る限り、パラメータはコントローラにのみ適用されます。
于 2013-02-20T14:18:30.313 に答える
0
私が理解しているように、リクエストからドメインを埋めるための特別な方法があります。この場合、次のように、すべてのパラメーター (マップ) をそのようなメソッドに渡すことができます。
def MyDomain {
static MyDomain buildFromParams(def params) {
return new MyDomain(
field1: params.field_1, //assuming that your params have different naming scheme so you can't use standard way suggested by Raphael
field2: params.field_2
)
}
}
class MyController {
def myAction() {
MyDomain foo = MyDomain.buildFromParams(params)
}
}
于 2013-02-20T14:42:16.833 に答える
0
パラメータ名が適切にフォーマットされていて、ドメイン属性と一致している場合は、次のことができます。
仮定
params = [name:"some name", age: "194", civilState: "MARRIED"]
と
class Person{
String name
Integer age
CivilStatus civilState //some enum
}
コントローラーで次のように groovy のプロパティ バインディング コンストラクターを利用できます。
class Controller {
def saveAction = {
new Person(params)
}
}
于 2013-02-20T14:57:29.827 に答える