dynamicloader

Tela Software:
dynamicloader
Detalhes de Software:
Versão: 1.0
Data de upload: 20 Feb 15
Revelador: Corey Oordt
Licença: Livre
Popularidade: 0

Rating: 4.5/5 (Total Votes: 2)

Há momentos em que você gostaria de usar um modelo diferente com base no valor de um cabeçalho de solicitação HTTP. Por exemplo, nomes de domínios diferentes, diferentes tipos de navegadores, ou mesmo a página de referência. O projeto dynamicloader permite que você especifique uma lista separada de diretórios em que Django deve procurar modelos, com base em um valor no cabeçalho do pedido.
Instalação
1. Instale o `` dynamicloader`` em seu caminho Python.
2. Adicione `` 'dynamicloader.middleware.RequestMiddleware', `` em sua configuração `` MIDDLEWARE_CLASSES``.
3. Adicione `` 'dynamicloader.loader.load_template_source', `` no topo * * da sua configuração TEMPLATE_LOADERS`` ``.
4. Crie uma nova configuração, `` DYN_TEMPLATE_MAP``, no seguinte formato ::
& Nbsp; & nbsp; & nbsp; DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; 'HTTP_HEADER1': {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile ('valor1'): ('/ path / to / diretório', '/ path / to / directory2',),
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile ('valor2'): ('/ path / to / directory3',)
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; },
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; 'HTTP_HEADER2': {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile ('valor1'): ('/ path / to / directory4',)
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; }
Template Mapa Exemplos
Nome de Domínio Diferenças
Este exemplo permite a substituição de certos modelos com base no nome de domínio ou subdomínio. Nesta configuração, Django vai olhar em `` / path / to / directory`` primeiro se o `` HTTP_HOST`` inclui o valor `` www2``.
& Nbsp; & nbsp; & nbsp; DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; 'HTTP_HOST': {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile ('www2'): ('/ path / to / diretório',),
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; },
& Nbsp; & nbsp; & nbsp; }
Diferenças de Browser
Este exemplo permite a entrega de diferentes modelos (ou aqueles apenas específicos), com base no navegador do usuário.
& Nbsp; & nbsp; & nbsp; DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; 'HTTP_USER_AGENT': {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile ('iPhone | iPod "): (' / path / to / diretório ',),
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; },
& Nbsp; & nbsp; & nbsp; }
Diferenças string query
Este exemplo verifica a string de consulta para decidir qual modelo a ser usado com base em uma seqüência de consulta (o material depois de um "?" Em uma URL).
DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; 'QUERY_STRING': {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile ('imreallycool = 1'): ('/ path / to / diretório',),
& Nbsp; & nbsp; & nbsp; },
}

Requisitos :

  • Python
  • Django

Outro software de desenvolvedor Corey Oordt

django-tweeter
django-tweeter

20 Feb 15

opensourcesite
opensourcesite

20 Feb 15

django-newsletters
django-newsletters

20 Feb 15

epub-creator
epub-creator

20 Feb 15

Comentário para dynamicloader

Comentários não encontrado
Adicionar comentário
Ligue imagens!