我目前有这个模板
{{#each model}}
{{#linkTo object this}}{{name}}{{/linkTo}}
{{/each}}
创建
<a href="path/#/objectid"/>
这不会导致模型重新加载,但使用该URL进行页面刷新。 如何使用完整的网址在我的模板中建立链接?
<a href="path/objects/{{id}}">{{name}}</>
不起作用,因为{{id}}似乎没有在引号内完全解析,所以我得到类似的内容:
path/objects/<script id="metamorph-5-start....
我看到了调整setupController的答案,但是如果我不想每次都重新加载模型怎么办?从模板方面对此进行控制会很好,即在不需要重新加载时使用{{#linkTo}},在需要重新加载时使用其他技巧。有没有一种简单的方法可以根据车把中的模型参数创建完整的URL?
答案 0 :(得分:3)
这可能不是您问题的完整解决方案,但对于此部分:
不起作用,因为{{id}}似乎没有在引号内完全解析,所以我得到类似的内容:
有帮助:
<a href="path/objects/{{unbound id}}">{{name}}</>
使用unbound
不会将脚本变形标记放在属性周围。
希望它可以帮助您解决问题。
答案 1 :(得分:0)
我想通了 - 尽管没有更改网址,所以我仍然使用正常的{{#linkTo...}}
。
如How to reload an ember data record?中所述,可以使用record.reload() - 它对我有用:
App.ObjectRoute = Ember.Route.extend({
...
setupController: function(controller, model) {
var record = App.Object.find(model.id);
record.reload();
controller.set("model", record);
},
});
如果使用修改后的网址有一个简单的替代方案,我仍然有兴趣找到答案。