he tratado de importar un archivo CSV en una base de datos mediante la deformación de la ModelForm dentro del administrador de hacer esto:Importar datos CSV en la base de datos de Django administración
models.py:
class Data(models.Model):
place = models.ForeignKey(Places)
time = models.DateTimeField()
data_1 = models.DecimalField(max_digits=3, decimal_places=1)
data_2 = models.DecimalField(max_digits=3, decimal_places=1)
data_3 = models.DecimalField(max_digits=4, decimal_places=1)
Formas. PY:
import csv
class DataImport(ModelForm):
file_to_import = forms.FileField()
class Meta:
model = Data
fields = ("file_to_import", "place")
def save(self, commit=False, *args, **kwargs):
form_input = DataImport()
self.place = self.cleaned_data['place']
file_csv = request.FILES['file_to_import']
datafile = open(file_csv, 'rb')
records = csv.reader(datafile)
for line in records:
self.time = line[1]
self.data_1 = line[2]
self.data_2 = line[3]
self.data_3 = line[4]
form_input.save()
datafile.close()
Admin.py:
class DataAdmin(admin.ModelAdmin):
list_display = ("place", "time")
form = DataImport
admin.site.register(Data, DataAdmin)
Pero estoy atrapado tratando de importar el archivo que puse en el campo "file_to_import". Obteniendo AttributeError en forms.py: el objeto 'function' no tiene ningún atributo 'FILES'.
¿Qué estoy haciendo mal?
Enlace muerto, pero sigue vivo en archive.org: http://web.archive.org/web/20100605043304/http://www.beardygeek.com/2010/03/adding-views-to-the-django- admin/ – askvictor
enlace alternativo http://note.harajuku-tech.org/adding-views-to-the-django-admin-beardy-geek – madmed
Data() es alguna clase especial de herramienta django o su propio modelo de datos? – andi