Solução para um DropDownlist mais visualmente atraente

Estou desenvolvendo uma aplicação de treinos de academia, nela existe uma base com vários exercícios, o usuário pode escolher 8 dentre todos para montar um treino personalizado.

Então eu tenho uma visão onde a coleção de exercícios é apresentada, e outra tela onde o usuário cria seu conjunto de exercícios através de uma série de 8 DropDownlist, eles já contem foto para facilitar a escolha dos exercícios, porém se eu pudesse melhorar está interface seria ótimo.

Pensei em utilizar uma coleção com checkbox em cada exercício e o usuário escolhe os exercícios que quer compor seu treino, mas a coleção em formato checkbox também não apresenta uma foto grande para ser de fácil escolha.

Improvisei com uma coleção de card abaixo do DropDownlist que apresenta o exercício assim que este DropDownlist é populado. Mas acredito que escolher os exercícios através da coleção de exercícios seja o formato mais prático.

Pensei em colocar um botão no exercício com a função de incluir ele em um array com limite de 8 itens, mas como levo estes itens do array para os 8 campos da tabela de treinos?

Alguém tem alguma sugestão? :smiling_face_with_tear:

You could try a custom collection with an image component and a switch component in the collection container.

Sim, colocar um botão no mesmo container para adicionar o exercício a uma array.
Como faço pra depois que este array está populado, inserir cada item em outra tabela em seus respectivos campos? Há uma função loop no glide?

There is no loop function, but are you trying to put the array into separate columns or separate rows?

Em colunas diferentes.
Para exemplificar, um treino é composto de vários exercícios.
Os exercícios estão na tabela exercícios.
Os treinos na tabela treinos.

Posso criar treinos com 8 exercícios, na tabela treinos há 8 colunas dedicadas para registrar cada exercício selecionado, exercício 1, exercício 2, exercício 3…

You could have 8 Single Value columns that get each value out of an array. If you are still confused, we would probably need to see some screenshots to understand what you have so far.

Desculpe, acho que não estou compreendendo sua sugestão.
De maneira simples o que preciso é distribuir a algumas colunas valores contidos em um array, mas estas colunas não devem ter uma fórmula computada pois eu também posso inserir informações nela diretamente.

Trouxe este caso aqui pois não consigo imaginar outra forma de fazer isso. E como a premissa principal do glide é ser uma interface de fácil utilização, faz sentido investir na faculdade desta operação.

How is your array constructed and what does your destination table look like?

Pensei em utilizar o array mas tentei fazer um teste prático e não obtive sucesso.

O mais próximo que cheguei de uma solução foi da seguinte forma:

  • Criei uma tabela auxiliar chamada Aux_treinos
  • Na coleção de exercícios inseri um botão em linha que ao ser clicado insere um novo registro na tabela auxiliar Aux_treinos
  • Criei algumas regras para evitar a inclusão duplicada do mesmo exercício
    Agora tenho uma tabela auxiliar com uma lista de exercícios selecionados com várias linhas.

Travei na transição dos registros que estão em linha para a tabela de treino, onde cada treino possui vários exercícios. Caso pudesse inserir um código de programação, faria um loop percorrendo cada linha da tabela auxiliar e inserindo nos 8 campos de um novo registro da tabela meus treinos.

Não sei se consegui deixar claro minha intenção, me avise que tento de outras formas me fazer entender.

If you can show us your data structure with some explanation on what fields are mapped to which objects you were describing, that would be great.

I think the ultimate aim is to get the numbers of each activity, as long as you can do that in tandem with your flow, you would be able to submit a new row to the destination table.

Claro, vamos lá!
Aqui está minha tabela de exercícios:


E aqui está minha tabela de treinos:

Na coleção eu gostaria de inserir um botão como este “+ Select” assim como na foto, desta forma eu poderia clicar nos exercícios que quero compor um novo treino.
Tela com a coleção de exercícios:

Atualmente eu crio os treinos indo diretamente na coleção de treinos e selecionando os exercícios um a um:

Porém o problema é que desta forma as imagens não são muito visíveis no Dropdown list , por isso estou buscando a alternativa de selecionar a partir da coleção de exercícios.

@ThinhDinh imagino que não tenha respondido pois não há uma solução para o que eu preciso certo?

Só pra que eu não fique na esperança de que exista alguma solução para isso e siga tentando outras alternativas.

I would have an extra table to store the exercises for each workout and change your flow according to that. That way, you can have as many exercises as you want and a cleaner data structure. Create the row for the workout first, and show a form for people to add exercises.

1 Like