Par défaut $ressource publier des données
Que peut-être étrange, mais j'ai besoin de spécifier des valeurs par défaut données POST pour mon $ressource à l'aide de la méthode de factorisation du module.
Quelqu'un a une idée de comment faire cela dans AngularJS ?
EDIT :
Bien, je veux faire quelque chose comme ceci :
/** * Module de déclaration. * @type {Objet} */ var services = angulaire.module (les"services", ["ngResource"]); /** * Produit de gestionnaire de service */ services.l'usine (le"Produit", function($ressource) { return $de ressources("http://someUrl", {}, { obtenir : {méthode: "GET", params: {productId: "-1"}}, mise à jour: {méthode : "POST", params:{}, données: {someDataKey: someDataValue}} }); });
Où les données sont les données par défaut pour mon avenir POST demandes.
Que faites-vous envoyer que les données? Si vous envoyez un jeton, vous devez l'envoyer dans les en-têtes, pas nécessairement dans postData...
OriginalL'auteur Nimaen | 2012-06-28
Vous devez vous connecter pour publier un commentaire.
Ce n'est pas vraiment l'angle de façon à faire une telle chose que vous perdre de la cohérence des données si vous le faites, et il ne reflète pas dans votre modèle.
Pourquoi?
La ressource factory crée l'objet et utilise l'instance d'objet de données POST. J'ai regardé la documentation et angular-resource.js et il ne semble pas être un moyen pour spécifier une valeur par défaut des propriétés personnalisées pour l'objet créé par des ressources sans modification angular-resource.js.
Ce que vous pouvez faire est:
et dans votre contrôleur:
OriginalL'auteur Bogdan Rybak
Je pense que ça va dépendre de la façon dont vous appelez la fonction de mise à jour. Si vous lisez l'angle principal de la page du tutoriel, en vertu de "Fil d'un Backend", le mongolab.js fournit un 'Projet' de l'usine. Copié mot à mot:
L'usage est que vous devez d'abord obtenir une instance du Projet:
Puis faire une mise à jour après quelques changements:
Dans votre cas, vous pouvez modifier la mise à jour de toujours ajouter les données dont vous avez besoin:
Sinon, vous pouvez probablement mettre la paire clé/valeur dans les params:
Il sera Affiché avec la paire clé/valeur dans l'URL, mais la plupart des serveurs d'application aujourd'hui, va lancer la paire dans les paramètres de l'objet, de toute façon.
OriginalL'auteur Foo L
Je pense que la plupart ont manqué un petit bijou dans la documentation ici.
Ceci suggère que vous pouvez effectuer les opérations suivantes.
Le deuxième paramètre au moment de l'action save (post) c'est du post de données.
OriginalL'auteur nesty
Wrapper fonction de travail.
OriginalL'auteur Andrew Joslin
Cela peut-il résolu votre problème?
OriginalL'auteur kfis
Vous pouvez simplement fusion votre params par défaut. Tout pas disponible dans
params
sera fourni par l'objet par défaut. Tout est disponible, ils seront écrasés parmyParams
où
myParams
serait votre liste de variables et demyDefault
vos valeurs par défaut comme un objet json.OriginalL'auteur MatthiasLaug
Vous pouvez définir des champs par défaut sur votre demande à l'aide de transformRequest option pour votre $ressourceles actions qui utilisent le POST méthode.
Par exemple quelque chose comme cela
OriginalL'auteur user2379541