django';s模板标记和angularjs

django';s模板标记和angularjs,angularjs,django,Angularjs,Django,我有一个小难题,Django的模板中有以下代码行: {% if x == y %} sth {% endif %} 其中“x”变量属于Django,而“y”是angularjs变量。我了解到可以将$interpolateProvider更改为{$$}或其他内容,但在本例中,这不是一个选项,因为代码应该如下所示: {% if x == {$ y $} %} sth {% endif %} 这当然会导致错误。如何解决这个问题,即在模板标记中使用angularjs变量 如果能给我一个提示我会很感激

我有一个小难题,Django的模板中有以下代码行:

{% if x == y %} sth {% endif %}
其中“x”变量属于Django,而“y”是angularjs变量。我了解到可以将$interpolateProvider更改为{$$}或其他内容,但在本例中,这不是一个选项,因为代码应该如下所示:

{% if x == {$ y $} %} sth {% endif %}
这当然会导致错误。如何解决这个问题,即在模板标记中使用angularjs变量

如果能给我一个提示我会很感激的

致以最良好的祝愿


nykon

我不确定这个解决方案是否适合您,但我曾经使用过的一个选项是JavaScript,我将Django和AngularJS传递给JavaScript,并在那里执行条件和操作

比如:

<script>
var angular_variable = {$ y $}
var django_variable = {{x}}
// Depending on your example you may need to enclose the variables with ' '
var angular_variable = '{$ y $}'
var django_variable = '{{x}}'

if (anguar_variable == django_variable){
   // Do whatever you need to do
}

</script>
var myVariable = {{ django_provided_var }};

变量变量={$y$}
var django_变量={{x}
//根据您的示例,您可能需要将变量用“”括起来
变量变量=“{$y$}”
var django_变量=“{x}”
if(anguar_变量==django_变量){
//做你需要做的事
}

老实说,我认为最好的解决方案是不要将Django模板语言与angular混合使用。如果确实需要依赖django提供的变量,则应将其传递给模板,并将其存储在JS变量中,如下所示:

<script>
var angular_variable = {$ y $}
var django_variable = {{x}}
// Depending on your example you may need to enclose the variables with ' '
var angular_variable = '{$ y $}'
var django_variable = '{{x}}'

if (anguar_variable == django_variable){
   // Do whatever you need to do
}

</script>
var myVariable = {{ django_provided_var }};
标记内,然后使用angular执行显示逻辑