| django-importador Importadores de datos para modelos Django |
Descargar ahora |
django-importador Clasificación y resumen
- Licencia:
- Other/Proprietary Li...
- Nombre del editor:
- Enrico Batista da Luz
- Sitio web del editor:
- http://github.com/ricobl/
django-importador Etiquetas
django-importador Descripción
Importadores de datos para modelos Django Django-Importer es un plugin de Django que proporciona una funcionalidad básica para importar datos en los modelos Django, lo que permite la creación fácil de importadores personalizados. Los formatos altamente extensibles y personalizables. Se denominan comúnmente los formatos de datos. El proyecto no tiene como objetivo ser el importador "todo en uno" / "de todos los formatos", sino para proporcionar una interfaz limpia y flexible para escribir importadores personalizados. Las corridas de aduanas habla más fuerte que las palabras, así que sigamos con una práctica Ejemplo. Diga que tiene una solicitud de noticias en su proyecto y desea importar datos de un archivo XML: - 1 2009-04-20 Django-Importador Liberado Hoy, DaDo-Importer ha sido lanzado ...
... El modelo Definición: Entrada de clase (Models.Model): # ID de fuente externa , para realizar un seguimiento de los elementos ya importados externos_id = models.integerfield () # Noticias Propiedades de la entrada de noticias titular = modelos.charfield (max_length = 100) creation_date = models.datetimefield () pub_date = modeltimefield () story = models.textfield () Ahora comienza la magia, vamos a escribir al importador. Debemos rellenar cada campo de nuestro modelo de entrada de noticias, convertir la fecha de creación desde la cadena a una fecha de Python y programar la fecha de publicación a la próxima hora. FROM DJANGO_IMPORTER.IMPORTERS.XML Importar DateTime, TimeDeltaclass MyXmlimportal (Xmlimportal): Clase Meta (Xmlimportal.Meta): # XMLIMPORTER META PROPIEDADES META: El nombre nodename que identifica un elemento XML item_tag_name = 'item' # A Lista de los nombres de campo modelo que se espera que se importarán desde los campos de origen = ('External_ID', 'titular', 'creation_date', 'Story') # un campo de mapeo de diccionario Nombres de campo a los identificadores de origen de datos # En este caso, las asignaciones apunta a XML nodos field_map = {'external_id': 'id', 'creation_date': 'fecha', 'titular' : 'Título', 'Story': 'Content',} # Lista de campos que identifican un artículo como exclusivo_fields = ('External_ID',) DeF PERSE_CREATION_DATE (yo, artículo, field_name, source_name): # Obtenga el valor 'source_name `Desde el elemento XML" para el campo "Field_Name` # en Otro W Ords: Lea el contenido del nodo `FECHA` para rellenar el campo 'creation_date` de nuestro modelo. val = self.get_value (artículo, source_name) # CONVERTAR A UNA FECHA DE PYTHON DEVOLUCIÓN DATETIMIENTO (* val.split ('-')) DEF SAVE_ITEM (Self, Artículo, Datos, Instancia, Commit = True): # Si el artículo es Nuevo, configure una fecha de publicación si no instance.pk: instance.pub_date = DateTime.now () + Timedelta (Horas = 1) Si se confirma: instance.save () devuelve la instancia, eso es todo. Ahora podemos instanciar a nuestro importador y comenzar a Parsining. FROM NEWS.MODELS PRINCITRES DE IMPORTACIÓN DE IMPORTADORES. IMPORTADORES Importar MyXmlimPorterimporter = MyXmlimportal (entrada, 'ruta / to / soutive.xml') Importador.Parse ()
django-importador Software relacionado