Os recursos são arquivos que são usados como recursos na exibição de uma página web, como arquivos de estilo CSS, Javascript e imagens. Recursos embalados juntos em um diretório para ser publicado, como tal, são chamados de uma biblioteca de recursos.
Quando um recurso é incluído na seção principal de uma página HTML, nós chamamos isso de uma inclusão de recursos. Uma é a inclusão de um determinado recurso numa biblioteca particular. Existem duas formas deste tipo de inclusão em HTML: javascript está incluído usando a tag script e CSS (e KSS) estão incluídos usando uma tag link.
Inclusões pode depender de outras inclusões. Um recurso javascript pode por exemplo ser construída em cima de uma outra javascript recurso. Isso significa que ambos devem ser carregados quando a página é exibida.
Componentes Página pode realmente necessitam de uma certa inclusão, a fim de ser funcional. Um widget pode por exemplo esperar uma biblioteca de Javascript particular carregado. Nós chamamos este um requisito inclusão do componente.
hurry.resource é um módulo que fornece uma API simples para especificar as bibliotecas de recursos, inclusão e requisitos de inclusão.
A biblioteca de recursos
Nós definimos uma biblioteca foo. Ele leva dois argumentos, o nome da biblioteca como deveria ser publicada sob uma URL e identificar exclusiva e um caminho para a raiz dos recursos (RootPath) que esta biblioteca publica:
>>> From hurry.resource Biblioteca de importação
>>> Foo = Library ('foo', 'fictício')
O caminho completo para o diretório com os recursos é reconstruída a partir do pacote que a Biblioteca é definida em:
>>> Foo.path #doctest: + ELLIPSIS
'... / Hurry.resource / src / pressa / recurso / manequim "
Pontos Entrada
As bibliotecas podem ser expostos para registro por qualquer framework web que hurry.resource é integrado com. Este framework web, em seguida, pode expor o caminho da biblioteca em uma URL em algum lugar. Isso é feito usando o ponto de entrada hurry.resource.libraries. Para registrar Biblioteca instâncias foo e bar no seu pacote como pontos de entrada incluem uma seção como este em sua setup.py:
entry_points = {
& Nbsp; 'hurry.resource.libraries': [
& Nbsp; 'foo = mypackage.foomodule: foo',
& Nbsp; 'bar = mypackage.barmodule: bar',
& Nbsp;],
& Nbsp;}
Existe uma API para ajudá-lo a obter todas as bibliotecas registradas:
>>> From bibliotecas de importação hurry.resource
Nada é registrado no entanto:
>>> lista (bibliotecas ())
[]
Seria bom para agora ter alguns testes que ver se os pontos de entrada na verdade são apanhados assim, mas isso exigiria uma configuração de teste envolvido que nós achamos difícil de construir.
O que é novo nesta versão:
- O WSGI Middleware depende WebOb, que é uma dependência opcional. Não expô-la no __init__.py por conseguinte, como que deve ser independente de WebOb. Para usar o middleware de importação-lo diretamente do hurry.resource.wsgi.
- A fábrica Biblioteca tem agora de ser chamado com um argumento rootpath como o segundo argumento. Este é um caminho para o diretório recurso real que a biblioteca representa, em relação ao diretório do pacote. Isso é necessário para fazer `` hurry.resource`` útil para quadros não baseado em zope.configuration.
- Isso quebra a compatibilidade com versões anteriores do hurry.resource; todo o código que utiliza a biblioteca deve ser ajustada. Por favor, atualize também seu setup.py a depender hurry.resource & gt;. = 0,10
- Os pacotes devem registrar suas instâncias Biblioteca com hurry.resource usando o ponto de entrada hurry.resource.libraries.
Requisitos :
- Python
Limitações :
- hurry.resource foi substituída pelo projeto Fanstatic
Comentários não encontrado