Mudanças entre as edições de "Integração do Pentaho com o Ckan"
(Criou página com 'Esta integração faz parte da interação e modificação de temas no CKAN. Maiores detalhes podem ser encontrados na pagina: http://docs.ckan.org/en/latest/theming/index.h...') |
|||
| Linha 13: | Linha 13: | ||
== Código de Exemplo de uma pagina personalizada no CKAN == | == Código de Exemplo de uma pagina personalizada no CKAN == | ||
| − | A seguir segue um exemplo de uma pagina personalizada com a utilização de um "iframe" para integrar outros sistemas nas paginas e no servidor do CKAN. Neste exemplo | + | A seguir segue um exemplo de uma pagina personalizada com a utilização de um "iframe" para integrar outros sistemas nas paginas e no servidor do CKAN. Neste exemplo utilizamos o Pentaho instalado na mesma máquina (localhost). |
| − | ; Nota : | + | ; Nota : É recomendado familiarizar-se com templates no modelo Jinja2, maiores detalhes podem ser encontrados em: http://jinja.pocoo.org/docs/2.9/templates/ |
| + | |||
| + | {% extends "base.html" %} | ||
| + | |||
| + | {% block subtitle %}{{ _('Pagina Personalizada') }}{% endblock %} | ||
| + | |||
| + | {%- block page -%} | ||
| + | {% block skip %} | ||
| + | <div class="hide"><a href="#content">{{ _('Skip to content') }}</a></div> | ||
| + | {% endblock %} | ||
| + | |||
| + | {# | ||
| + | Substitua o cabeçalho em uma página por página, estendendo esse bloco. Se estiver fazendo alterações no cabeçalho do site, é preferível substituir o arquivo header.html. | ||
| + | #} | ||
| + | {%- block header %} | ||
| + | {% include "header.html" %} | ||
| + | {% endblock -%} | ||
| + | |||
| + | {# O bloco de conteúdo permite substituir o conteúdo da página, se necessário #} | ||
| + | {%- block content %} | ||
| + | {% block maintag %}<div role="main">{% endblock %} | ||
| + | <div id="content" class="container" style="width: 1200px;"> | ||
| + | {% block main_content %} | ||
| + | {% block flash %} | ||
| + | <div class="flash-messages"> | ||
| + | {% block flash_inner %} | ||
| + | {% for message in h.flash.pop_messages() | list %} | ||
| + | <div class="alert fade in {{ message.category }}"> | ||
| + | {{ h.literal(message) }} | ||
| + | </div> | ||
| + | {% endfor %} | ||
| + | {% endblock %} | ||
| + | </div> | ||
| + | {% endblock %} | ||
| + | |||
| + | {% block toolbar %} | ||
| + | <div class="toolbar"> | ||
| + | {% block breadcrumb %} | ||
| + | {% if self.breadcrumb_content() | trim %} | ||
| + | <ol class="breadcrumb"> | ||
| + | {% snippet 'snippets/home_breadcrumb_item.html' %} | ||
| + | {% block breadcrumb_content %} | ||
| + | <li class="active"><a href="/pagina-personalizada">Pagina Personalizada</a></li> | ||
| + | {% endblock %} | ||
| + | </ol> | ||
| + | {% endif %} | ||
| + | {% endblock %} | ||
| + | </div> | ||
| + | {% endblock %} | ||
| + | |||
| + | <div class="row wrapper{% block wrapper_class %}{% endblock %}{% if self.secondary()|trim == '' %} no-nav{% endif %}"> | ||
| + | |||
| + | {# | ||
| + | O bloco pré-primário pode ser usado para adicionar conteúdo antes da renderização das colunas de conteúdo principal da página. | ||
| + | #} | ||
| + | {% block pre_primary %} | ||
| + | {% endblock %} | ||
| + | |||
| + | |||
| + | {% block primary %} | ||
| + | <article class="module"> | ||
| + | <div class="module-content"> | ||
| + | |||
| + | <h1>Pagina Personalizada</h1> | ||
| + | <p>Alguma paragrafo de informação (pode-se utilizar o HTML aqui)</p> | ||
| + | |||
| + | {# | ||
| + | Exemplo de iframe: | ||
| + | #} | ||
| + | |||
| + | <iframe src="http://localhost/pentaho/"></iframe> | ||
| + | |||
| + | </article> | ||
| + | {% endblock %} | ||
| + | |||
| + | {% block secondary %}{% endblock %} | ||
| + | </div> | ||
| + | {% endblock %} | ||
| + | </div> | ||
| + | </div> | ||
| + | {% endblock -%} | ||
| + | </div> | ||
| + | {# | ||
| + | Substitua o rodapé em uma página por página, estendendo esse bloco. Se fizer alterações no cabeçalho do site, é preferível substituir o arquivo footer.html-u. | ||
| + | #} | ||
| + | {%- block footer %} | ||
| + | {% include "footer.html" %} | ||
| + | {% endblock -%} | ||
| + | {%- endblock -%} | ||
| + | |||
| + | {%- block scripts %} | ||
| + | {% resource 'base/main' %} | ||
| + | {% resource 'base/ckan' %} | ||
| + | {% if g.tracking_enabled %} | ||
| + | {% resource 'base/tracking.js' %} | ||
| + | {% endif %} | ||
| + | {{ super() }} | ||
| + | {% endblock -%} | ||
Edição das 11h58min de 10 de janeiro de 2017
Esta integração faz parte da interação e modificação de temas no CKAN.
Maiores detalhes podem ser encontrados na pagina: http://docs.ckan.org/en/latest/theming/index.html
Índice |
Pré-requisitos
É necessário realizar a instalação do Pentaho anteriormente. A integração com o CKAN é feita através de "iframe" em paginas personalizadas no CKAN. Para isso é necessário entender a estrutura de paginas do CKAN. A próxima seção apresenta esta estrutura.
Estrutura de Paginas do CKAN
As paginas da raiz do CKAN estão no diretório "/ckan/lib/default/src/ckan/ckan/templates". As paginas HTML neste diretório ficam visíveis na raiz da URL do CKAN.
Código de Exemplo de uma pagina personalizada no CKAN
A seguir segue um exemplo de uma pagina personalizada com a utilização de um "iframe" para integrar outros sistemas nas paginas e no servidor do CKAN. Neste exemplo utilizamos o Pentaho instalado na mesma máquina (localhost).
- Nota
- É recomendado familiarizar-se com templates no modelo Jinja2, maiores detalhes podem ser encontrados em: http://jinja.pocoo.org/docs/2.9/templates/
{% extends "base.html" %}
{% block subtitle %}Predefinição:('Pagina Personalizada'){% endblock %}
{%- block page -%}
{% block skip %}
{% endblock %}
{#
Substitua o cabeçalho em uma página por página, estendendo esse bloco. Se estiver fazendo alterações no cabeçalho do site, é preferível substituir o arquivo header.html.
#}
{%- block header %}
{% include "header.html" %}
{% endblock -%}
{# O bloco de conteúdo permite substituir o conteúdo da página, se necessário #}
{%- block content %}
{% block maintag %} {% block main_content %}
{% block flash %}
{% endblock %}
{% block toolbar %}
{% endblock %}
{#
O bloco pré-primário pode ser usado para adicionar conteúdo antes da renderização das colunas de conteúdo principal da página.
#}
{% block pre_primary %}
{% endblock %}
{% block primary %}
<article class="module">
Pagina Personalizada
Alguma paragrafo de informação (pode-se utilizar o HTML aqui)
{#
Exemplo de iframe:
#}
<iframe src="http://localhost/pentaho/"></iframe>
</article>
{% endblock %}
{% block secondary %}{% endblock %}
{% endblock %}
{% endblock -%}
{#
Substitua o rodapé em uma página por página, estendendo esse bloco. Se fizer alterações no cabeçalho do site, é preferível substituir o arquivo footer.html-u.
#}
{%- block footer %}
{% include "footer.html" %}
{% endblock -%}
{%- endblock -%}
{%- block scripts %}
{% resource 'base/main' %}
{% resource 'base/ckan' %}
{% if g.tracking_enabled %}
{% resource 'base/tracking.js' %}
{% endif %}
Predefinição:Super()
{% endblock -%}