{DjIAo和Ember.js {{MEDIA_URL}}

时间:2012-12-10 00:13:41

标签: django ember.js

我有以下把手模板:

{% handlebars "header" %}
<div class="header row-fluid">
  <div class="logo"> <a href="index.html"><span>Welcome!</span><span class="icon"></span></a> </div>
  <div class="top_right">
    <ul class="nav nav_menu">
      <li class="dropdown"> <a class="dropdown-toggle administrator" id="dLabel" role="button" data-toggle="dropdown" data-target="#" href="/page.html">
        <div class="title"><span class="name">George</span><span class="subtitle">Awesome Developer</span></div>
        <span class="icon"><img src="{{MEDIA_URL}}images/dashboard/thumbnail_george.jpg"></span></a>
      </li>
    </ul>
  </div>
  <!-- End top-right --> 
</div>
{% endhandlebars %}

问题是{{MEDIA_URL}}当然是脱离了上下文,所以我无法渲染我的图像。我尝试将bindAttr用于src,但问题仍然存在。我该如何解决这个问题。

另一方面,这个模板是静态的,因为我使用把手的唯一原因是在点击其中一个按钮时使用Ember的{{action}}助手转换到新状态。这是正确的方法吗?

更新 我的临时解决方案是我的控制器中有一个mediaUrl属性,我已经硬编码了媒体网址。但是,由于媒体网址可以随时在服务器端进行更改,因此不会出现这种情况。

1 个答案:

答案 0 :(得分:1)

您可能最好让服务器处理模板并在将其发送到客户端之前插入正确的MEDIA_URL。我能想到的另一种方法是在渲染之前对服务器进行单独查询以获取该URL。