私は、knockoutJSビューモデルを使用してajax JSON投稿を送信するコントローラをgrailsに持っています。コントローラ側のデータモデルを自動的に春の結合魔法を使用し、私のデータの新しいインスタンスにJSONリクエストパラメータをバインドしようとしている1対多のプロパティにバインドするためのknockoutJSビューモデルを設定します。
var childProperty= function(name, id) {
this.name = name;
this.id = id;
};
//KnockoutJS - Main view model
var viewModel = {
id: ko.observable(1),
childProperty: ko.observable(new childProperty("Chuck",1))
}
:(javascriptオブジェクトと一緒に)ビューモデルは、次のようになりますそのようなモデル:私は春がchildProperty.idは、データモデルの1対多の関係であることを検出すると、データモデルに関連するプロパティを取得行き結合たいとき
def jUpdate = {
def update = new SomeObject(params)
}
問題がでてきます。あなたはあまりにもこれらの関係を更新する Grailsのデータバインディング機能を使用することができる1対1または多対1の関連を持っている場合は
データ
を結合し、協会:Grailsのドキュメントは、これは言います。次のような着信要求がある場合 たとえば:
/book/save?author.id=20
をGrailsは自動的にリクエストパラメータに.ID サフィックスを検出し、ルックアップ著者のインスタンスをします
がDEF =新しいブック(のparams)
私はko.toJSユーティリティ機能を使用していますが、単純なプロパティが正しく結合されているB: 与えられたIDのようなデータバインディングを実行するとき。 Grailsコントローラに投稿されたときにSpringがそれを正しく検出し、関連するレコードを取得してオブジェクトを構築するように、ビューモデルの子プロパティをどのように設定できますか?