django-vcexport.

Casas de modelo Django exportador
Baixe Agora

django-vcexport. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • GPL
  • Preço:
  • FREE
  • Nome do editor:
  • Ethan Jucovy

django-vcexport. Tag


django-vcexport. Descrição

Casos de modelo Django exportador Django-VceExport é uma biblioteca flexível para exportar instâncias de modelo django serializado para um repositório controlado por versão automaticamente ou manualmente. Como funciona-lhe uma API de nível de aplicativo e uma API de nível de modelo. Use a API de nível de modelo para definir o comportamento de exportação por Classe de modelo, com as exportações automáticas no Save.Use a API no nível do aplicativo para definir o comportamento de exportação nas visualizações (por exemplo) e desencadear explicitamente a exportação de conteúdo do seu próprio código. O design do apito de nível de modelo é inspirado pelo modelo de Django e Modelform padrão orientado. Os comportamentos principais são definidos na classe vcexport.models.exporter, que é análogo ao modeladmin. Como modeladmin e Modelform, você subclasse a base padrão para personalizar o comportamento em uma base por modelo. 1. Para versões automáticas de modelos, registre-os com vcexport: Importar vcexport vcexport.reegister (myModel) Isso conectará um sinal post_save. 2. Você pode personalizar o comportamento de exportação em uma base por modelo por subclassificação vcexport.models.exporter e contando vcexport para registrar seu modelo com o exportador personalizado: classe myexporter (vcexport.models.exporter): ... vcexport.register ( MyModel, Exportador = MyExporter) 3. Por padrão, os modelos são serializados para o formato XML do Django, porque funciona bem com diff e é genérico. 4. Você pode personalizar a serialização por modelo passando por um caminho de modelo personalizado como atributo de classe: classe myexporter (exportador): repositório_template = 'fleem / document_format.txt' O modelo será renderizado com duas variáveis de contexto; Objeto que é a instância do modelo que foi salva, e um booleano criado: {% se criado%} novo objeto! {% endif%} {{object.title}} {{object.related_field.pk}} **** cor : {{{object.color}} {{object.description}} Permite que os casos de uso alternativo sejam suportados: * Você deseja version um modelo atacado * você tem um modelo que tem um ou dois campos de texto semelhantes a documentos, e você Quer version esses campos apenas - simplesmente não escreva nenhum outro campo no modelo de serialização. 5. Por padrão, os dumps documentos de suas instâncias do modelo serão salvos em caminhos de repositório que se parecem / app_name / modlclassName / instance_pk. Você pode personalizar o caminho: classe myexporter (exportador): def repositório_path (self): return '/ my_custom / path_for / this_model /' + self.object.color Observe que, se você fizer isso, você pode acabar com várias instâncias de modelo que Salve no mesmo caminho do arquivo no repositório. Este é um recurso. 6. O usuário de confirmação padrão é indefinido. Atualmente, você não pode personalizar isso. A mensagem de confirmação padrão é desinteressante: "Objeto {{instance.pk} (de '{{app_name}}. {{Modle_name}}') salvos por django-vceexport." Você pode personalizar a mensagem de confirmação com um método de modelo que leva um booleano criado e retorna uma string: classe myexporter (exportador): def repositório_commit_message (auto, criado): se criado: retornar "Usuário% s cometeu um novo% S"% (self.object.user.username, self.object.color) Retorna "Usuário% s Commedted% s"% (self.object.user.user.username, self.object.color) O apiyou do nível do aplicativo também pode exportar o conteúdo Explicitamente, por exemplo, no método Salvar () do seu modelo, no código de exibição, etc, com a função VCEXPORT.EXPORT_TO_PEITORY: Def my_view (solicitação): ... Object = mymodel.objects.get (...) object.morx = Solicitar.poste Object.Save () Importar vcexport vcexport.export_to_repository (objeto) O modelo padrão, mensagem de confirmação, etc são as mesmas que a API do modelo. Você pode personalizá-los em seu próprio código e passá-los para export_to_repository: def my_view (solicitação): ... Object, criado = mymodel.objects.get_or_create (...) object.morx = solicite.post objeto .Save () Importar vcexport vcexport.export_to_repository (objeto, criado = criado, repositório_template = '/ fleem / morx.html', mensagem = "alterado o MORX", repository_path = '/ fleem / objetos /% s'% object.pk ) A função Export_to_Repository retornará a revisão do commit, ou nenhuma se não houvesse alterações no commit.configurationyou deve fornecer uma configuração em suas configurações.py File: * vcexport_checkout_dir: O caminho absoluto para um checkout local do repositório que Você deseja armazenar seus dados inyou terá que inicializar seu repositório e checkout em seu próprio. Para usar com o Subversion, você deve ter PYSVN instalado. Requisitos: · Django. · Pitão O que há de novo nesta versão: · Liberação Brown-saco; Função Export_to_Repository disponível como API pública (vcexport.export_toy_repository).


django-vcexport. Software Relacionado