[pyar] trabajando con "modelos genericos" en django

Federico Mendez mendezfederico87 en gmail.com
Lun Ene 14 15:10:23 ART 2013


Hola,

Tengo el siguiente modelo...

class SocialMediaAccountModel(models.Model):
    platform = models.ForeignKey(SocialPlatformTypeModel,
            related_name='platforms')
    url = models.URLField('Account url', unique=True,
            null=True, blank=True)
    content_type = models.ForeignKey(ContentType)
    object_id = models.PositiveIntegerField()
    content_object = generic.GenericForeignKey('content_type', 'object_id')


    def __unicode__(self):
        return self.url


    class Meta:

        verbose_name = 'Platform'

        verbose_name_plural = 'Platforms'

Que como muchos sabran usa el framework contenttypes de Django... el
tema es que cuando quiero crear un objeto y asociarlo a otro modelo...
al crear el formulario me aparecen los fields content_type y
object_id. Esto queda medio feucho, y ademas son innecesarios ya que
esos fields estan implicitos en la URL (ej:
"clients/2/social-platforms/" el content type es Client y el object_id
del objecto en particular es 2)...

Lo que quisiera saber es como guardar este tipo de objetos si estoy
excluyendo content_type y object_id en mi formulario. Me imagino que
podria sobre-escribir el save() del formulario, pero no sabria como
obtener el id de la url.

Extra datos:

# mi view

class ClientSocialMediaCreateView(BaseSingleClient, AdminOrCoreRequiredMixin,
        generic.CreateView):
    model = SocialMediaAccountModel
    form_class = SocialMediaForm
    template_name = 'social_accounts/social_media_form.html'


# mi url

...

url('^clients/(?P<pk>\d+)/social-platforms/create/$',
        ClientSocialMediaCreateView.as_view(), name='client_social_create'),
...

Muchas gracias!


-- 
Mit freundlichen Grüßen,
Federico Mendez
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20130114/aa195a76/attachment.html>


More information about the pyar mailing list