Pergunta

Eu estou tentando implementar o editor WMD usado em StackOverflow para criar algumas funcionalidades básicas Wiki-estilo. Eu sou até o ponto onde é hora de salvar o banco de dados, mas não estou certo sobre o que eu deveria estar salvando.

Se eu salvar o HTML produzido então eu posso recuperar e exibi-lo corretamente, mas na re-edição que eu sou confrontado com a edição de HTML, não Markdown. No entanto, se eu salvar o Markdown eu não consigo ver nenhuma maneira de converter esta de volta para HTML para exibição, e olhando para StackOverflow ele envia o HTML browser.

Eu estou supondo que eu não preciso para salvar ambos, de modo que coisa simples eu estou ausente?

Foi útil?

Solução

Absolutamente salvar o código do Markdown como digitado pelo usuário.

Em seguida, você precisará de um conversor Markdown que irá convertê-lo em HTML para exibi-lo.

Você vai encontrar um monte deles na
http://en.wikipedia.org/wiki/Markdown#Converters
e
http://markdown.infogami.com/

Eu votaria contra o uso de JS no seu caso. Parece haver um .NET implementação mas eu não posso te dizer como é bom .

Enquanto tornando sua página você vai ter que passar o código Markdown a um conversor como o acima e, em seguida, a saída do HTML retornado.

Se o desempenho for um problema, você também pode considerar salvar tanto o código Markdown (para edição posterior) e o código HTML (para a exibição) inthe banco de dados. Dessa forma, ele só vai ser convertido uma vez.

Outras dicas

Gostaria de sugerir salvando o texto exato entrou para o banco de dados, de modo que a edição vai funcionar com a remarcação original ou HTML.

Quando você recuperar o texto para exibição, você analisá-lo no lado do servidor e converter para HTML, se necessário

[Edit] No comentário: Você parece ter uma forma de análise e conversão para HTML já, se eu entendi sua pergunta. Aqui você fala sobre o HTML produzido.

Se eu salvar o HTML produzido então eu posso recuperar e exibi-lo corretamente, mas na re-edição que eu sou confrontado com a edição de HTML, não Markdown

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