Como a lógica de design para armazenar as regras de atribuição de badges e pontos de reputação para os usuários do site

StackOverflow https://stackoverflow.com/questions/2629999

  •  26-09-2019
  •  | 
  •  

Pergunta

No meu aplicativo web atual, eu tenho que criar uma "Reputação Pontos e Crachás Mecanismo de" algo semelhante a ISSO.Esse sistema contém muitas regras e cada regra está associada a alguns predefinidos atividades do usuário (visão de questão, voto pergunta, etc.).

O que eu estou tentando descobrir a solução para:

  1. Armazenar todas as regras em tabelas de banco de dados (quase cada regra inclui várias condições).podemos fazer isso?
  2. Para corresponder a cada ação do usuário com regras salvas no banco de dados tabelas e atribuir o associado pontos de reputação e emblemas.
    • Verifique se o usuário já tenho a recompensa para o valor de limiar (e.g não de votos, pontos de vista), definido na regra.
    • Executar determinadas ações, como promover usuário, notificar o usuário, ban definido pelo usuário em algumas regras.
  3. Fornecer uma INTERFACE de usuário para o administrador do aplicativo para Gerenciar(adicionar novo / editar / excluir) regras de aplicação.

Qualquer dica seria aprecia?

Foi útil?

Solução

Banco de dados não parece ser a ferramenta adequada para este requisito.Parece que você vai precisar para implementar essa lógica na camada de aplicação.claro, alguns valores de parâmetro podem vir de arquivos de configuração.

Uma forma de se é isso que você realmente deseja fazer, é ter variáveis (tais como vistas, votos) definido em colunas.A saída de seu crachá atribuído ou pontos de reputação também pode ser coluna, mas a função de outras colunas.assim, a tabela ficaria assim:
badgeId__badgeName_pontos de vista__votos
1
_____prata_____10____2
2
_____ouro____100____10

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top