Atualmente trabalhando em uma página da Web personalizada que mostra os projetos disponíveis no Trac (1.0.1). Eu estou usando o mod_python para conectar a interface do trac. Eu encontrei uma página padrão para isso, mas não mostrei uma lista de repositórios. A página mostrou algumas variáveis para vincular aos diferentes projetos, mas não consigo encontrar variáveis nos diferentes repositórios dentro dos projetos.
Eu configurei a página da Web para ler isto: link (sob a aparência do site)
Breve resumo; editando ../conf.d / trac.conf:
PythonOption TracEnvParentDir /parent/dir/of/projects
PythonOption TracEnvIndexTemplate /path/to/template
E fazendo um arquivo de modelo, posso editar em / path / to / template:
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:py="http://genshi.edgewall.org/"
xmlns:xi="http://www.w3.org/2001/XInclude">
<head>
<title>Available Projects</title>
</head>
<body>
<h1>Available Projects</h1>
<ul>
<dl>
<li py:for="project in projects" py:choose="">
<a py:when="project.href" href="$project.href"
title="$project.description">$project.name</a>
## <dd> WANT TO ADD CODE HERE! </dd>
<py:otherwise>
<small>$project.name: <em>Error</em> <br /> ($project.description)</small>
</py:otherwise>
</li>
</dl>
</ul>
</body>
</html>
Então ... O código que quero adicionar é algo como:
<dd py:for="repos in project.repository" py:choose="">
<a py:when="repos.href" href="$repos.href"> $repos.name</a> </dd>
Não consigo descobrir onde adicionar as variáveis ou se já existem algumas variáveis que posso usar. Depois de procurar nos arquivos parecia que main.py tinha algo a ver com as variáveis (/usr/local/Trac-1.0.1/trac/web/main.py), mas à primeira vista não parecia fácil basta adicionar mais variáveis.
Existe uma maneira simples de encontrar o restante das variáveis? E quão difícil é adicionar mais variáveis? Será que será mais fácil fazer isso de uma maneira alternativa? Tudo que preciso é vincular dinamicamente aos repositórios