2013-07-26 5 views
1

Я пытаюсь создать todo-приложение (оригинал, правда?) И проблема с тем, что ember не отображается мои вновь созданные объекты, если вы используете find ({some parameters}) вместо find().Различные результаты из App.Model.find() и App.Model.find ({params})

Проблема заключается в том, что App.Model.find() возвращает другой результат, чем, например, App.Model.find ({checked: false}).

Я создал TasksRoute и определил данные модели как App.Task.find(). При использовании App.Task.find() я могу создать новую задачу, набрав:

var task = App.Task.createRecord({name: "taskName"}); 
task.get("store").commit(); 

Список обновляется и вид отображает вновь созданную задачу.

Но если я вместо этого использую App.Model.find ({}) или с любым другим хешем, а затем создаю задачу, ничего не происходит.

Вот HTML:

<script type="text/x-handlebars" data-template-name="application"> 
    {{#linkTo "tasks"}}Tasks{{/linkTo}} 
    {{outlet}} 
</script> 

<script type="text/x-handlebars" data-template-name="tasks"> 
    {{#each controller}} 
    {{name}}<br /> 
    {{/each}} 
</script> 

Javascript:

App = Em.Application.create(); 

App.Store = DS.Store.extend({ 
    revision: 12, 
    adapter: DS.RESTAdapter.create({url: "http://localhost/backend/"}) 
}); 

App.Task = DS.Model.extend({ 
    name: DS.attr('string') 
}) 

App.TasksRoute = Ember.Route.extend({ 
    model: function() { 
     return App.Task.find(); 
    } 
}); 

App.Router.map(function(){ 
    this.route('tasks'); 
}); 

App.TasksController = Em.ArrayController.extend({}); 

Причина, по которой я не хочу использовать находку() является то, что я хочу, чтобы иметь возможность указать свой запрос. Например, я хотел бы получить все задачи, проверенные, предоставив хэш для поиска().

(я попытался создать jsFiddle, но не смог заставить его работать с светильниками)

Является ли это ошибка или я сделал что-то не так?

Заранее спасибо

ответ

0

Вы можете использовать filterProperty('checked', false) вместо find({params})

+0

Было бы неплохо, если бы не тот факт, что я могу использовать только filterProperty, когда данные уже загружены. В моем случае может быть сотни задач в целом, а для уменьшения времени загрузки я хочу ограничить эту сумму. – rasmushaglund