[pyar] Cuestión de elegancia (?)

Claudio claudiobidau en gmail.com
Dom Mayo 27 00:03:26 ART 2012


Hola EHB
Es flask y los tags son unique, el problema fue que supe como hacer para
que sqlalchemy no pinche por inconsistencia cuando intentaba asociarle un
tag al post que ya existía en la bd :S

Saludos

Claudio

2012/5/26 QliX=D! [aka EHB] <qlixed en gmail.com>

> Si es django podes hacer que tag sea unique y un for que siempre inserte:
>
> for tag in form.tags.data.split(,):
>   try:
>     post.tags.append(tag.strip()) #ojo con los blancos: tag1 , tag2,
> tag3,       , t4
> except:
>     continue
>
> Saludos!!!
> -EHB-
> El 26/05/2012 20:43, "Claudio" <claudiobidau en gmail.com> escribió:
>
>> Hola!
>> Tengo un código que funciona pero es horrible (sobre todo la linea del
>> 'for') y me gustaría saber si existe alguna forma mas elegante de
>> escribirlo.
>>
>> En la vista tengo lo siguiente (es el post de un form):
>>
>>     post = Post()
>>
>>     for tag_name in set(map(lambda tag:tag.strip(),
>> form.tags.data.split(','))):
>>       if len(tag_name) > 0:
>>         t = Tag.query.filter_by(name=tag_name).first() or Tag(tag_name)
>>         post.tags.append(t)
>>
>>     db.session.add(post)
>>     db.session.commit()
>>
>> form.tags.data es un string separado por comas que puede traer cualquier
>> verdura. Lo separo, le saco los espacios en blanco, quito los repetidos y
>> por último chequeo si ya lo tengo en la base de datos. Increíblemente
>> funciona
>>
>> Otra opción que encontre por ahi fue meter la "lógica guarda tags"
>> directamente en el modelo pero no se si es lo correcto :S
>>
>> Saludos y muchas gracias
>>
>> Claudio
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120527/f5bd61ba/attachment.html>


More information about the pyar mailing list