2

http://jsfiddle.net/EjyW4/

基本的に、リソースモジュールでAngularJSを使用してクライアントからオブジェクトの配列を投稿しようとしていますが、JSONオブジェクトを送信する代わりに、Angularは無用なtoString表現をネットワーク経由で送信しています。

残念ながら、フィドル自体のコードはあまり機能しません-意図はここでより多くのコンテキストで概説されていますが、それはまだ非常に生であり、正しい方法のように見えるものにはまだ似ていません)しかし、これは角度のある問題のようです少なくともChromeコンソールを見ると、Grailsではなく。

Query String Parameters:
callback:JSON_CALLBACK
tests:%5Bobject+Object%5D,%5Bobject+Object%5D

angle.toJson(http://docs.angularjs.org/api/angular.toJson)があるようですが、この場合は機能しないようです。私が見たドキュメントは、基本的なintを送信する以上のことをカバーしていないようです。必要に応じて、カンマ区切りの文字列を送信しますが、これは一般的な使用例のようです。

4

1 に答える 1

2

この$resource関数は実際に新しいオブジェクトコンストラクターを返します。この$resourceコンストラクターにプロパティを設定してから、onのようなメソッドを呼び出しますsave

$resourceしたがって、フィドルでの問題は、データセットが設定されていない状態でを保存しようとしていることです。あなたが持っているのはconfigプロパティだけですが、testsそれは何をすべきかわかりません。

代わりに、次のことを行います。

  1. $resourcefactory / methodを使用して、新しいリソースのコンストラクターをセットアップします。
  2. 新しいリソースの新しいインスタンスを作成します。
  3. その上にプロパティを設定します(例myNewResource.tests = $scope.tests);
  4. 保存する(myNewResource.$save()

http://jsfiddle.net/EjyW4/2/

あなたが最初にやろうとしていたことは、より適しているように見えます$http(私もその例をフィドルに入れました)。

于 2012-11-12T17:06:00.557 に答える