Dünkü yazıya yaptığınız yorumu yanıtlamak istedim, bu yüzden soruyu buraya sorduğunuz için memnun oldum.
jQuery.ajax üzerinde çok ince bir katman olarak yazdım. Çok gelişmiş değil ve dernekler için yerleşik bir tesis bile yok. Bununla birlikte, şu anda bu lib'in adil bir kullanım alanı sağladığını düşünüyorum. Aşağıdaki koddan göreceğiniz gibi, bu kavram ele alınabilir, ancak daha iyi lib'de soyutlanmalıdır.
Dernekler, her üst kaynakta bir kaynak denetleyicisi örneği oluşturarak işlenebilir. Her belirli kaynak denetleyicisi, belirli bir kaynak dizisini yönetmeli, ancak belirli bir türdeki tüm kaynakları zorunlu olarak değil.
Senin durumunda
, sen görüşmeler için yorumları yönetmek için ResourceController genişletmek olabilir: Bu durumda, her bir konuşma için ConversationComments bir örneğini yapılandırabilirsiniz
App.ConversationComments = Ember.ResourceController.extend({
resourceType: App.Comment,
// override _resourceUrl() to base the url on the conversation
_resourceUrl: function() {
return this.get("conversation")._resourceUrl() + "/comments";
}
});
:
App.Conversation = Ember.Resource.extend({
resourceUrl: '/conversations',
resourceName: 'conversation',
resourceProperties: ['prop1', 'prop2']
// init comments
init: function() {
this.set("comments", App.ConversationComments.create({ conversation: this }));
}
});
Son olarak, sizi 'her konuşma için bir yorum almak gereklidir:
conversation.get("comments").findAll();
Json'daki tüm yorumlara sahipseniz, alternatif olarak loadAll() kullanabilirsiniz. Nerede ve ne zaman loadAll() veya findAll() çağırırsanız uygulamanızın ihtiyaçlarına bağlıdır. Açıkçası, en iyi performans için ajax çağrılarının sayısını azaltmak isteyeceksiniz.
Ember verileri, ember-istirahattan çok daha iddialı bir projedir ve halihazırda derneklerin yanı sıra işlemler gibi gelişmiş özellikleri de destekler. Bununla birlikte, değişen bir API ile çok aktif bir gelişim içinde. Eğer sabırlıysanız ve kodu kazmaya istekli iseniz, bunu denemenizi tavsiye ederim. Toz biraz yerleştiğinde, bununla ilgili blog yazmayı da planlıyorum.
Detaylı yanıtınız için çok teşekkürler. Ember verilerini kullanmak için ne kadar değişiklik yapmam gerektiğini görmeye çalışıyorum. Hala düşünüyor. –
Yaklaşımınızı uygulamaya başladım ve yorumu söyleyen edit.js'nin PUT veya submit işlevi gibi görünüyor.saveResource() hala "/ conversations /: conversation_id/comments /: id" yerine "/ comments" yoluna jsonu PUT'den dolayı başarısız olur. Düzenlemek için blog postanızda önerdiğiniz gibi kopyaları nasıl oluşturabilirim? –
Sorunun cevabını kendim kaldırdım "kaynakları: yorumlar" ve yalnızca nest.rb içinde iç içe geçmiş kaynakları yapılandırmasını tuttu –