Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Django JS国际化不';我不能正常工作_Javascript_Django_Internationalization_Gettext - Fatal编程技术网

Javascript Django JS国际化不';我不能正常工作

Javascript Django JS国际化不';我不能正常工作,javascript,django,internationalization,gettext,Javascript,Django,Internationalization,Gettext,我对djangojs的翻译有问题。当执行makemessages-djangojs-ltr时,它工作:它获取调用gettext的所有字符串。但是当涉及到页面加载中的翻译时,它不起作用。我使用了JqueryDialog,我试图翻译模态框的按钮。我的代码如下: window.id_agreement_modal = $("#id_agreement_modal"); var buttons_trans = {}; var sb = gettext("Submit(Saves locally, n

我对djangojs的翻译有问题。当执行
makemessages-djangojs-ltr
时,它工作:它获取调用
gettext
的所有字符串。但是当涉及到页面加载中的翻译时,它不起作用。我使用了JqueryDialog,我试图翻译模态框的按钮。我的代码如下:

window.id_agreement_modal = $("#id_agreement_modal");

var buttons_trans  = {};
var sb = gettext("Submit(Saves locally, not in DB)");
buttons_trans[sb] = function() {
                $("#id_agreement").html(window.id_agreement_modal.val());
                $(this).dialog("close"); 
                window.opened = false;
            };

var cl = gettext("Close");
buttons_trans[cl] = function() {
                $(this).dialog("close");
                window.opened = false;
            };

window.id_agreement_modal.dialog({
    resizable: true, 
    width: 700,
    height: 500,
    modal: true,
    open: function(){
        $(this).html($("#id_agreement").val());
    },
    close: function(){
        window.opened = false;
    },
    buttons: buttons_trans,
    autoOpen: false
});
我在每个模板上添加了
{%loadi18n%}
,在加载
i18n
库之后,我正在从外部JS加载上面的代码。但是当我试图在Chrome控制台中评估gettext时,它似乎没有定义。页面中有很多iFrame,我很确定我在所有这些iFrame中都包含了库

我怎样才能解决这个问题


提前感谢。

您是否已将您的翻译添加到.po文件中?里面有模糊的标签吗?您是否使用
compilemessages
编译了这些消息?是的,我已经完成了所有这些;)我意识到编译.po后,.mo二进制文件也发生了变化(其中包含js翻译)。我假设它有js翻译的序列化版本,但在加载模板时看到它不起作用后,我对它感到非常困惑