Podria llegar a faltar una ventanita intermedia que diga que registros se agregaron bien
y cuales mal (por ejemplo si hay algun alumno duplicado)
--- /dev/null
+78226,Ricardo Markiewicz,rmarkie@fi.uba.ar,45524413
+12345,pepe le pua,bla@ble.com,
r.destroySelf()
flash(_(u'El %s fue eliminado permanentemente.') % name)
raise redirect('../list')
r.destroySelf()
flash(_(u'El %s fue eliminado permanentemente.') % name)
raise redirect('../list')
+
+ @expose(template='kid:%s.templates.from_file' % __name__)
+ def from_file(self):
+ return dict()
+
+ @expose()
+ def from_file_add(self, archivo):
+ """ Se espera :
+ padron,nombre,email,telefono
+ """
+ import csv
+ lines = archivo.file.read().split('\n')
+ for line in lines:
+ for row in csv.reader([line]):
+ if row == []:
+ continue
+ print row[1]
+ u = Alumno(row[0], nombre=row[1])
+ u.email = row[2]
+ u.telefono = row[3]
+ u.contrasenia = row[0]
+ u.activo = True
+ raise redirect('./list')
<br/>
<a href="${tg.url('/alumno/new')}">Agregar</a>
<br/>
<a href="${tg.url('/alumno/new')}">Agregar</a>
+<a href="${tg.url('/alumno/from_file')}">Agregar desde Archivo</a>
<div py:for="page in tg.paginate.pages">
<a py:if="page != tg.paginate.current_page"
<div py:for="page in tg.paginate.pages">
<a py:if="page != tg.paginate.current_page"