Django和AngularJS在模板中使用同样的符号来引用变量,例如 {{variable_name}}。
有两种解决办法,各有利弊。一个修改AngularJS模板语法,另一个使用Django的标签。
1. 修改Django:
使用verbatim标签,verbatim标签在Django 1.5以后被加入Django。缺点是使用起来比较啰嗦。
2. 更简洁的解决方案是修改AngularJS的模板语法:
var my_app = angular.module('MyApp').config(function($interpolateProvider) { $interpolateProvider.startSymbol('{$'); $interpolateProvider.endSymbol('$}'); });
现在你可以区分变量来自server端{{ varname }}, 还是client端{$ varname $}
缺点是你不能结合第三方的AngularJS使用第三方的指令了。