[Python] Django question

Marco De Paoli depaolim a gmail.com
Lun 11 Maggio 2015 17:01:43 CEST


2015-05-11 16:51 GMT+02:00 Carlos Catucci <carlos.catucci a gmail.com>:

>
> 2015-05-11 16:46 GMT+02:00 Carlos Catucci <carlos.catucci a gmail.com>:
>
>> in effetti provo e ti dico
>
>
> provato ma mi da sempre lo stesso errore.
> Premetto che ho controllato e non ci sono array o valori multipli nei
> parametri.
> Non riesco a capire dove possa essere il problema. Ecco il codice
> completo, magari auta
>
> def add_new_router(request):
>
>     retval = None
>
>     if 'data' in request.POST:
>
>         data = json.loads(request.POST.get('data', ''))
>
>         try:
>
>             hoster_address =
> HostersAddress.objects.filter(pk=data['hosters_address_id'])
>
>             new_router, created = Routers.objects.get_or_create(
>             {
>                 'mac_address': data['mac_address'],
>                 'uuid': data['uuid'],
>             },
>

acc, qui mac_address e uuid li stai passando dentro un dizionario e invece
sono dei kwargs
https://docs.djangoproject.com/en/1.8/ref/models/querysets/

prova nel formato:
Routers.objects.get_or_create(
mac_address=data['mac_address'],
uuid=data['uuid'],

            defaults={
>                 'hosters_address_id': hoster_address[0].id,
>                 'router_pubblic_ip': data['router_pubblic_ip'],
>                 'active': data['active']
>             })
>
>             if created == True:
>
>                 new_router.save()
>
>             retval = 'OK'
>
>         except Exception, ex:
>
>             print ex
>             retval = ex
>
>     return HttpResponse(retval)
>
> def fill_routers(request):
>
>     for hoster_address in
> HostersAddress.objects.filter(active=True,deleted=False):
>
>         mutable = request.POST._mutable
>         request.POST._mutable = True
>         request.POST['data'] = json.dumps({
>             'mac_address': generate_mac_addr(),
>             'uuid': generate_uuid(),
>             'hosters_address_id': hoster_address.id,
>             'router_pubblic_ip': generate_ip(),
>             'active': True,
>         })
>         request.POST._mutable = mutable
>         new_router = add_new_router(request)
>
>     return HttpResponse('OK')
>
> La fill_routers chiama la funzione dove poi e' contenuta la get_or_create.
>
> Carlos
> --
> EZLN ... Para Todos Todo ... Nada para nosotros
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20150511/21d758d3/attachment.html>


Maggiori informazioni sulla lista Python