這個問題與此相關:Ember.js {{render}} helper model not correctly set 但我認爲我會問錯誤的問題。Ember.js使用{{render}} helper從模板中獲取屬性
路由器
App.Router.map(function() {
this.resource('article', {path: '/article/:id'});
this.resource('article.new', {path: "/article/new"});
});
,因爲它是內既第二十和 Article.new呈現爲一個彈出我還沒有定義categorynew路線或資源。
模板
<script type="text/x-handlebars" data-template-name="article">
{{render "category/new"}}
</script>
<!-- popups -->
<script type="text/x-handlebars" data-template-name="category/new">
Name: {{input type="text" value=name}}
Image: {{view App.UploadFile name="image" file=image }}
Category-parent: {{input value=categoryRelation}}
<button {{action 'saveCategory'}}>Save</button>
</script>
控制器
App.CategoryNewController = Ember.ObjectController.extend({
actions: {
saveCategory: function() {
var newCategory = this.store.createRecord('category', {
name: this.get('name'),
image: this.get('image'),
category_parent:this.get('category_parent')
});
newCategory.save();
console.log(this.get('naam')); // undefinded
}
}
});
當我填寫的是它和{{render category/new}}
呈現形式我得到這些錯誤:
Assertion failed: Cannot delegate set('name', a) to the 'content' property of object proxy <App.CategoryNewController:ember387>: its 'content' is undefined. ember-1.1.2.js:417
Uncaught Error: Object in path nam could not be found or was destroyed.
我認爲控制器必須有一個模型。但是如果我做了this.get('model')
它總是錯誤的模型。即使我在App.CategoryNewRoute
中定義它。
這樣做的伎倆,謝謝!名字確實拼錯了,我總是把我的代碼和變量翻譯成英文,以便更好地理解願意幫助的每一個人。 – DelphiLynx