在inherited_resources gem的README中,它说下面的关联允许使用帮助器,例如parent #=> @task
class CommentsController < InheritedResources::Base
belongs_to :project {
belongs_to :file, :message, :task, :polymorphic => true
}
end
没有解释的是帮助者本身。我们知道这是什么样的,它是如何工作的?这真的有助于我的理解。
干杯
答案 0 :(得分:0)
此宝石看起来在此时已被弃用,但是:
README所说的是项目可以是// models.language.js
var Language = DS.Model.extend({
title: DS.attr('string'),
providers: DS.hasMany('provider')
});
// models/provider.js
var Provider = DS.Model.extend({
title: DS.attr('string'),
region: DS.belongsTo('region', { async: true }),
languages: DS.hasMany('language', {async: true})
});
// In this region-component.js I have the model title,
// and then an each block listing all providers
// When the language filter changes, I need it to filter down
// just to those providers who have the language association.
providers: function() {
return this.get('model').get('providers').filterBy('languages', this.get('language'));
}.property('model')
,:file
或:message
的父级。此外,任何人都可以成为拥有:task
的父母。
如果这可能有用,您可以调用:comment
上的任何帮助者来获取有关其父级的信息。例如,您可以编写一个条件语句,以不同的方式处理:comment
,具体取决于它的父对象是:file还是:task。这是一个随机的例子:
:comment