Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Markdown i Symfony #44

Open
tomas-zw opened this issue Mar 31, 2022 · 3 comments
Open

Markdown i Symfony #44

tomas-zw opened this issue Mar 31, 2022 · 3 comments
Assignees
Labels
documentation Improvements or additions to documentation solution exists

Comments

@tomas-zw
Copy link

Vilket är det rekomenderade sättet att använda markdown i Symfony?
Jag har hittat lite info om Parsedown och om jag har förstått det rätt så kan jag då omvandla till html i controllern -> skicka till vyn och där bara presentera den som vilken annan variabel som helst.
Kan ha missförstått men verkar väldigt smidigt iaf.
https://ourcodeworld.com/articles/read/375/how-to-convert-markdown-to-html-in-symfony-3

@mosbth mosbth self-assigned this Mar 31, 2022
@mosbth mosbth added the documentation Improvements or additions to documentation label Mar 31, 2022
@mosbth
Copy link
Member

mosbth commented Mar 31, 2022

Du verkar ha koll på hur det funkar.

Det finns många olika moduler som kan parsa Markdown till HTML och man kan installera dem med composer. De har lite olika "flavour" och stöd för saker bortom själva Markdown.

En variant är att man sparar Markdown-filerna i tex content/kmom01.md och läser in filens innehåll till en variabel i en controller metod. Sedan parsar man markdown-texten till html och bifogar med $data som skickas till templatefilen för rendering.

På det sättet kan man bygga både enkla och mer avancerade webbplatser som bygger på Markdown.

En variant vi använde i tidigare kurser byggde på denna artikeln.

Den bygger i sin tur på följande Markdown parser.

Men det är rimligt att kika lite olika Markdown parsers innan man väljer.

Via Packagist kan man se vilken parser som laddats ned flest gånger, det är ju någon form av populatritetskoll.

@mosbth
Copy link
Member

mosbth commented Mar 31, 2022

En annan variant är att använda ett filter som är inbyggt i templatemotorn Twig. Det gör det enkelt att komma igång.

Man installerar en modul för markdown-filtret och väljer en markdown-parser med composer.

composer require twig/markdown-extra league/commonmark

Sedan kan man skriva markdown direkt i sin twig template, ungefär så här.

{% apply markdown_to_html %}
Report
======

This is the reports from each kmom.
{% endapply %}

{{ include('report/kmom01.markdown.twig')|markdown_to_html }}
{{ include('report/kmom02.markdown.twig')|markdown_to_html }}

Det finns en del i en zoom som visar hur man bygger en report-sida med Markdown enligt ovan.

@tomas-zw
Copy link
Author

Tack för dom utförliga svaren.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation solution exists
Projects
None yet
Development

No branches or pull requests

2 participants