バックエンドサーバに送信されたパラメータをネストしたいとします。これまでのところ、私の現在のリソースは、私のバックエンドサーバに送信されngResourceでパラメータをネストする
var user = new User({name: 'jason', email: '[email protected]'});
user.$save()
paramsが理想的
{name: 'jason', email: '[email protected]'}
のように見える終わる...私のコントローラで
angular
.module('myApp.users')
.factory('User', user);
user.$inject = ['$resource'];
function user($resource) {
return $resource('/users.json');
}
のように見える、私が欲しいですバックエンドサーバに送信されたパラメータは、
{user: {name: 'jason', email: '[email protected]'}}
私はコントローラに私が
var user = new User({user: {name: 'jason', email: '[email protected]'}});
を書くことができることを知っているしかし、私はそのアプローチが好きではありません。私が知りたいのは、コントローラ内ではなくユーザリソースにネストされたパラメータを作成する方法があることです。 paramsDefault引数がここで助けてもいいですか?公式ドキュメントによると、あなたはtransformRequestプロパティを使用して、/マップの入力データをラップすることができるはず
[こちら](http://stackoverflow.com/questions/34744611/angularjs-transform-data-before-send-with-ng-resource-and-transformrequest)の投稿をチェックしてください。トランスフォームリクエストを使用してみてください。そして、[ここ](https://docs.angularjs.org/api/ng/service/$http)は、これについての公式な文書です – Michael
私はこれを調べます。つまり、私は$リソースオブジェクトの簡潔さを本当に楽しみます: 'return $ resource( '/ users.json');'。更新や作成など、さまざまなリソースアクションを手動で作成する必要がなくても、私の仕事は恒星となるでしょう。 – jason328
サービスの利用はどうですか?あなたはそれを考えましたか? –