[pyar] Cuestión de elegancia (?)

Claudio claudiobidau en gmail.com
Sab Mayo 26 20:43:30 ART 2012


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
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120526/780b7fe3/attachment.html>


More information about the pyar mailing list