无法理解haml文件中以下行的含义

时间:2012-02-29 07:03:45

标签: ruby-on-rails haml

#{@current_user.allowed_events.size}

#{@current_user.batch_mates.size}

link_to "<span>#{@current_user.related_colleges.size}</span>Colleges".html_safe

在上面这些行中是什么allow_events.size,related_colleges.size? 这些内置功能?

2 个答案:

答案 0 :(得分:2)

allowed_eventsbatch_mates很可能是User模型上的关联或方法(假设是@current_user引用的内容)。看一下apps/models/user.rb,看看你在那里找到了什么。

这些方法可能返回ActiveRecord::Relation,它类似于模型数组的类包装器,通常从数据库搜索返回。无论如何,ActiveRecord::Relation类的size方法与lengthcount非常相似。

因此,最有可能只是吐出属于当前用户的允许事件和批处理伙伴的数量。

至于刚刚触发Ruby interpolation#{}。你也可以这样做:

= @current_user.allowed_events.size

= @current_user.batch_mates.size

答案 1 :(得分:0)

根据代码,current_user是User模型的对象。 related_colleges和allowed_events可以是使用模型中的association / method / name范围,您需要在模型中查看User.rb文件才能获得它。我认为这些是关联(可能是has_many),其中size是获取关联对象计数的方法