在 Django 视图中将降价从文件传递到模板

Pass markdown from file to template in Django view

我试图从我的 Django 视图传递 *.md 文件的内容以使用 Showdown 进行渲染(下面的 JS 代码),但我得到:Uncaught SyntaxError: Invalid or unexpected token:

var converter = new showdown.Converter({
    'github_flavouring': true,
    'tables': true
});
var convert = function() {
    $('#preview').html(converter.makeHtml($('{{markdown}}')));
};
convert();

我通常更喜欢使用隐藏的 div 来包含我的降价数据:

<div id="markdown" style="display:none;">
    {{markdown}}
</div>

然后你可以在你的JavaScript代码中参考这个如下:

var converter = new showdown.Converter({
    'github_flavouring': true,
    'tables': true
});
var convert = function() {
    $('#preview').html(converter.makeHtml($('#markdown').text()));
};
convert();

[Edit] 对于 ES6,你也可以尝试使用反引号 (`) 来封装你的 markdown 数据,这将使它成为一个多行字符串,但是由于 markdown 使用反引号来突出代码,这会导致问题 (除非你确定你的降价数据中永远不会有代码块。