HubDB
-
Marketing Hub
- Enterprise
-
Content Hub
- Professional or Enterprise
O HubDB é uma ferramenta que permite criar tabelas para armazenar dados em linhas, colunas e células, muito parecido com uma planilha. Você pode personalizar as colunas, linhas e outras configurações de uma tabela HubDB de acordo com as suas necessidades. Por exemplo, você pode usar uma tabela HubDB para:
- Armazenar feedback de um mecanismo externo para recuperar em um momento posterior.
- Armazenar dados estruturados que podem ser usados para criar páginas dinâmicas do CMS (somente para CMS Hub Professional e Enterprise).
- Armazenar dados para usar em um e-mail programável (somente para Marketing Hub Enterprise).
As tabelas HubDB podem ser acessadas no HubSpot e na API do HubDB, e você pode recuperar os dados de uma tabela de várias maneiras, dependendo do caso de uso. Para obter dados de uma tabela HubDB, você pode:
- Consultar os dados externamente por meio da API do HubDB.
- Usar as tags de marcação HubL do HubSpot para extrair os dados para o CMS como conteúdo estruturado.
- Usar a API do HubDB com funções sem servidor para fornecer uma experiência interativa do aplicativo da Web.
Observação:
- Para usar os dados do HubDB em páginas, você precisa do CMS Hub Professional ou Enterprise.
- Para usar os dados do HubDB em e-mails programáveis, você precisa do Marketing Hub Enterprise.
- Publicar, editar e exibir tabelas existentes requer permissões do HubDB. Criar, clonar, excluir e editar as configurações de uma tabela HubDB requer permissões de Configurações da tabela HubDB.
Uma tabela HubDB consiste em linhas, colunas e células, semelhantes a uma planilha.
- Tabelas: uma tabela é um arranjo bidimensional de linhas e colunas. Quando uma tabela é criada, ela recebe um ID globalmente exclusivo que você pode usar quando precisar especificar uma tabela no HubL ou por meio da API.
- Linhas: as linhas são fatias horizontais de uma tabela. Em um aplicativo de planilha, as linhas são representadas por números, começando com 1. Cada linha da tabela recebe um ID exclusivo na criação. Cada linha de uma tabela vem com algumas colunas por padrão:
Coluna | Description |
---|---|
hs_id
| Um ID numérico globalmente exclusivo e atribuído automaticamente para esta linha. |
hs_created_at
| Um registro de data e hora de quando esta linha foi criada. |
hs_path
| Em páginas dinâmicas, esta string será o último segmento do caminho do URL para a página. |
hs_name
| Em páginas dinâmicas, este é o título da página. |
Observação: as colunas de área de rich text no HubDB são limitadas a 65.000 caracteres. Para obter mais informações, consulte o anúncio de log de alterações.
- Colunas: as colunas são fatias verticais de uma tabela. Cada coluna tem um tipo, que é usado para armazenar tipos de dados. Uma tabela pode incluir quantas colunas você quiser, e cada uma recebe um ID globalmente exclusivo na criação. O ID da coluna começa com um valor de
1
, mas este número não precisa ser sequencial e não pode ser reutilizado. Os tipos de coluna incluem:- Texto
- Rich text
- URL
- Imagem
- Selecionar
- Seleção múltipla
- Data
- Data e hora
- Número
- Moeda
- Caixa de seleção
- Localização (longitude, latitude)
- ID externo
- Vídeo
- Células: as células armazenam os valores da interseção entre uma linha e uma coluna. As células podem ser lidas ou atualizadas individualmente ou como parte de uma linha. Definir o valor de uma célula como
null
é equivalente a excluir o seu valor.
Observe os seguintes limites técnicos do HubDB:
- Limites da conta:
- 1.000 tabelas do HubDB por conta.
- 1 milhão de linhas do HubDB por conta
- Limites da tabela:
- 250 colunas por tabela.
- 10.000 linhas por tabela do HubDB
- 700 caracteres por nome de tabela.
- 700 caracteres por rótulo de tabela.
- Limites da coluna:
- 65.000 caracteres por coluna de rich text.
- 10.000 caracteres em cada coluna de texto.
- 700 caracteres por nome de coluna.
- 700 caracteres por rótulo.
- 300 caracteres por descrição de coluna.
- 700 caracteres por opção selecionável dentro de uma coluna.
- Limites de página:
- 10 chamadas para a função do HubL
hubdb_table_rows
por página do CMS. - 10 páginas dinâmicas usando a mesma tabela HubDB.
- HubDBs com páginas dinâmicas ativadas devem ter caminhos em minúsculas para que os URLs dessas páginas não façam distinção entre maiúsculas e minúsculas.
- 10 chamadas para a função do HubL
Você pode criar tabelas HubDB por meio da interface do usuário do HubSpot ou da API do HubDB.
Todas as novas tabelas criadas são definidas com um status de rascunho. Elas não podem ser usadas para gerar dados via HubL ou API até que você publique a tabela. Ao criar uma tabela, você também pode gerenciar as configurações, como permitir o acesso público à API e se os seus dados serão utilizados para criar páginas dinâmicas.
As tabelas HubDB podem ser unidas usando o tipo de coluna ID externo, que permite renderizar os dados combinados de várias tabelas. Isso pode ser útil quando alguns dados são compartilhados entre vários repositórios de dados, permitindo uma tabela de dados centralizada e acessível em vários outros repositórios de dados de tabela HubDB.
Abaixo, saiba como unir várias tabelas HubDB.
- Na sua conta da HubSpot, vá para Marketing > Arquivos e modelos > HubDB.
- Localize a tabela à qual deseja adicionar uma associação, clique no menu suspenso Ações e selecione Editar.
- No canto superior direito, clique em Editar e, em seguida, selecione Adicionar coluna.
- Insira um rótulo e um nome para a nova coluna.
- Clique no menu suspenso Tipo de coluna e selecione ID externo.
- Clique no menu suspenso Selecionar tabela e selecione a tabela que pretende associar à tabela atual.
- Clique no menu suspenso Selecionar coluna e, em seguida, selecione a coluna da tabela selecionada anteriormente para que fique visível no campo ID externo.
- Clique em Adicionar coluna.
Observação: o valor escolhido em Selecionar coluna determina apenas o valor da coluna que você vê no campo ID externo na interface de usuário do HubDB. Todas as colunas da tabela estão disponíveis ao renderizar as tabelas HubDB associadas.
Agora que você tem uma coluna ID externo, verá um campo de coluna de seleção múltipla em cada linha da sua tabela HubDB, o que lhe permitirá selecionar as linhas de uma tabela externo.
O campo Selecionar coluna será utilizado neste campo de seleção múltipla para identificar qual linha você está selecionando na tabela externa. No exemplo abaixo, os valores de seleção múltipla para o campo Associação avançada de tabela são os valores disponíveis na coluna Nome da tabela HubDB externa.
Observação: é seguro editar o campo Selecionar coluna da sua coluna de ID externo; isso simplesmente atualizará os valores da coluna que serão exibidos na interface do usuário do HubDB.
Todos os dados de linha de uma tabela externa podem ser acessados via HubL para renderização, não apenas o campo Selecionar coluna. Os dados da linha externa do HubDB podem ser acessados usando um loop for aninhado, percorrendo todas as linhas externas associadas a uma linha individual.
{% for row in hubdb_table_rows(tableId, filterQuery) %}
the name for row {{ row.hs_id }} is {{ row.name }}
{% for foreign_row in row.foreign_table %}
the name for foreign row {{ foreign_row.hs_id }} is {{ foreign_row.name }}
{% endfor %}
{% endfor %}
Com o HubL, você pode extrair dados do HubDB para usar como conteúdo estruturado em páginas do site. Abaixo, saiba mais sobre como recuperar dados de tabela, linha e coluna usando o HubL.
Para listar linhas de uma tabela, use a função do HubL hubdb_table_rows(). Você pode acessar uma tabela pelo seu ID ou nome. É recomendável fazer referência a uma tabela HubDB pelo nome, pois isso pode ajudar na portabilidade de códigos em contas da HubSpot. O nome da tabela imutável é definido ao criar uma nova tabela e pode ser encontrado a qualquer momento, selecionando Ações > Gerenciar configurações no editor da tabela. O ID de uma tabela pode ser encontrado na barra de endereço do editor da tabela ou no painel de tabelas do HubDB, na coluna ID
.
Veja um exemplo do uso de hubdb_table_rows()
para buscar dados.
Observação: por padrão, o número máximo de linhas retornadas é 1.000. Para recuperar mais linhas, especifique um limit
na consulta de função. Por exemplo:
hudb_table_rows (12345, "random()&limit=1500")
.
<filterQuery>
usa a mesma sintaxe que a API de HTTP. Por exemplo, hubdb_table_rows(123, "employees__gt=10&orderBy=count")
retornaria uma lista de linhas, onde a coluna "funcionários" é superior a 10, ordenada pela coluna "contagem". Uma lista completa de <filterQuery>
parâmetros opcionais pode ser encontrada aqui.
Em vez de usar várias consultas de linha com diferentes parâmetros <filterQuery>
, você deve fazer uma consulta e usar os filtros selectattr()
or rejectattr()
para filtrar suas linhas:
Para obter uma única linha, use a função do HubL hubdb_table_row()
.
Nomes de colunas integradas e personalizadas não diferenciam letras maiúsculas de minúsculas. HS_ID
funcionará da mesma forma que hs_id
.
Atributo | Description |
---|---|
row.hs_id
| O ID exclusivo global desta linha. |
row.hs_path
| Ao usar páginas dinâmicas, esta string será o valor da coluna Caminho da página e o último segmento do caminho do URL. |
row.hs_name
| Ao usar páginas dinâmicas, esta string será o valor da coluna Título da página para a linha. |
row.hs_created_at
| Registro de data e hora do Unix de quando a linha foi criada. |
row.hs_child_table_id
| Ao usar páginas dinâmicas, este será o ID da outra tabela que está preenchendo os dados da linha. |
row.column_name
| Obtenha o valor da coluna personalizada pelo nome da coluna. |
row["column name"]
| Obtenha o valor da coluna personalizada pelo nome da coluna. |
Para obter os metadados de uma tabela, incluindo seu nome, colunas, última atualização etc., use a função hubdb_table()
.
Os atributos listados abaixo são referentes à variável à qual hubdb_table()
foi atribuída no código acima. Sua variável pode ser diferente.
Observação: é recomendável atribuir isso a uma variável para facilitar o uso. Se você não quiser fazer isso, pode usar{{ hubdb_table(<tableId>).attribute }}
Atributo | Description |
---|---|
table_info.id
| O ID da tabela. |
table_info.name
| O nome da tabela. |
table_info.columns
| Lista de informações da coluna. Você pode usar um loop "for" para iterar as informações disponíveis neste atributo. |
table_info.created_at
| Registro de data e hora de quando a tabela foi criada pela primeira vez. |
table_info.published_at
| O carimbo de data/hora em que esta tabela foi publicada. |
table_info.updated_at
| O carimbo de data/hora em que esta tabela foi atualizada pela última vez. |
table_info.row_count
| O número de linhas na tabela. |
Para ter as informações de uma coluna em uma tabela, como rótulo, tipo e opções, use a função hubdb_table_column()
.
Os atributos listados abaixo são referentes à variável à qual hubdb_table_column()
foi atribuída no código acima. Sua variável pode ser diferente.
Observação: é recomendável atribuir isso a uma variável para facilitar o uso. Se você não quiser fazer isso, pode usar{{ hubdb_table_column(<tableId>,<columnId or column name>).attribute }}
Atributo | Description |
---|---|
table_info.id
| O ID da coluna. |
table_info.name
| O nome da coluna. |
table_info.label
| O rótulo a ser utilizado para a coluna. |
table_info.type
| Tipo desta coluna. |
table_info.options
| Para selecionar o tipo de coluna, este é um mapa de |
table_info.foreignIds
| Para tipos de coluna foreignId, uma lista de foreignIds (com propriedades de |
Método | Description |
---|---|
getOptionByName("<option name")
| Para selecionar tipos de coluna, obtenha informações de opção pelo nome das opções. |
O tipo de coluna richtext
funciona de modo semelhante ao campo de rich text que você encontra para os módulos.
Os dados são armazenados como HTML e a interface de usuário do HubDB fornece uma interface de edição de texto. No entanto, ao editar uma tabela HubDB por meio da interface de usuário do HubSpot, você não pode editar o código-fonte diretamente. Isso evita situações em que um usuário não técnico pode inserir um HTML inválido, evitando problemas não intencionais com a aparência ou a funcionalidade do seu site. Para situações em que você precisa de um código incorporado ou mais HTML personalizado, é possível usar o recurso de incorporação no editor de rich text para colocar seu código personalizado.
Agradecemos pelos seus comentários. Eles são muito importantes para nós.