2010-02-23 7 views
1

J'ai une simple méthode python qui devrait être retournée par Django/pyAMF mais qui retourne HTTP Status 500 (bien que je passe par la méthode sans erreur et l'objet Grupo est créé):HTTP inattendu état 500 réponse

def newGrupo(request, igID): 
    return { 'grupo': Grupo.objects.create(ig = Ig.objects.get(pk=igID)), 
      'membros' : None, 
      'reponsavel' : None 
     } 

la chose la plus étrange est qu'un autre appel qui font à peu près la même chose (elle retourne en fait une liste du précédent) ok retour:

def listGrupos(request, igID): 
    result = [] 
    for grupo in Grupo.objects.filter(ig=igID): 
     grp = {} 
     grp['grupo'] = grupo 
     grp['membros'] = grupo.membro_set.filter(ativo=True) 
     grp['responsavel'] = grupo.responsavel 
     result.append(grp) 

    return result 

Toute idée pourquoi?

+0

Votre journal d'erreur dit .... –

Répondre

1

Définir l'enregistreur sur la passerelle, .: par exemple

import logging 

from pyamf.remoting.gateway.django import DjangoGateway 

services = {} 

gw = DjangoGateway(services, logger=logging) 

Cela devrait vous aider à obtenir à la racine du problème.

+0

Bien qu'il me montre le message d'erreur (objets de classe ne peut pas être sérialisé) Il ne fait pas sens puisque j'utilise les mêmes classes avec succès dans d'autres appels. – Samuel

0

Cela ressemble à un problème avec le sérialiseur pyAMF pour les objets Django.

Fonctionne avec "model.object.filter" mais pas avec ".create" ou ".get".

en utilisant des « primitifs » au lieu d'objets Django éviter le problème:

return { 'grupo': {"id": g.id}, 
      'membros' : None, 
      'reponsavel' : None 
     } 
+0

À l'époque: l'astuce de journalisation a sauvé ma journée :) ... du journal à la source à la solution de contournement, peut-être à un correctif (un jour;) – Samuel

+0

Quelle version de Django utilisez-vous? Je sais que certaines mises à jour de PyAMF ont été nécessaires pour prendre en charge 1.2 (à venir), voir http://dev.pyamf.org/ticket/759 pour plus d'informations. – njoyce