Je voulais savoir comment mettre à jour la base de données à l'aide de sqlform via un appel de service. par exempleComment mettre à jour la base de données à l'aide de sqlform via un appel de service
db.py contient
db.define_table('person',
Field('name'),
Field('email'))
contrôleur
contient
@service.run
def display_form():
form = SQLFORM(db.person)
if form.accepts(request.vars):
return "success"
else:
return "failure"
La variable post http est envoyé en tant que données = { "name": "xyz", "email": "xyz @ gmail.com "}
Je voudrais savoir si je suis sendign les variables de poste correctement. Je reçois toujours le message d'échec. Pourquoi la base de données ne se met-elle pas à jour? S'il vous plaît donnez-moi quelques conseils. En fait je voudrais le faire avec form = auth.register(). J'ai besoin d'entrer les valeurs de la table auth via un appel de service. mais c'est long chemin à parcourir.
Merci à l'avance
Anthony,
Ceci est la façon dont je suis l'affichage.
url = "http://mydomain.com/myapp/mycontroller/api/person"
data = {"name":"peter","email":"[email protected]"}
datatosend = urllib.urlencode(data)
request = urllib2.Request(url,datatosend)
res = urllib2.urlopen(req)
mais la méthode POST dans API ne voit pas la personne du tout. Aidez-moi, s'il vous plaît. J'ai un besoin urgent.
grâce anthony, mais pourriez-vous s'il vous plaît me expliquer pourquoi mon fonctions comme indiqué dans les questions ne font pas le prévu. – athinker
anthony, j'ai essayé webservice reposant mais il ne prend pas la demande. Il n'identifie pas le nom de table atall. J'utilise urllib2 pour POST. – athinker
Voir la réponse mise à jour ci-dessus. La version @ request.restful fonctionne pour moi - il y a peut-être un problème avec votre requête POST. – Anthony