我使用acts_as_taggable_on来标记帖子和用户个人资料。正在使用taggable_type帖子或个人资料以及上下文标记和兴趣正确保存标记记录。 Acts_as_taggable_on发送<%= render post.tags %>
和&lt;%=呈现profile.interest%&gt; to views / acts_as_taggable_on / tags / _tag.html.erb,其中自述文件建议使用link_to,如<%= link_to tag.name, tag_path(tag.name) %>
。
我想要做的是根据taggable_type或上下文更改路径 - 例如if tag.tagging.context == 'interest' link_to tag.name, profile_tag_path(tag.name)
等用于帖子标记和个人资料标记。
在相应的视图/控制器中,我可以正确地获取记录filtered by context,我无法有条件地更改链接路径。 tag.tagging.context
给出了无方法错误,tag.taggings.each do |tag| tag.context
会在每次使用时返回给定标记的所有上下文 - 即4个&#39;兴趣&#39;和10个&#39;标签&#39;如果它在个人资料和帖子上多次使用过。我唯一想要的只是当前实例的上下文。
我也很高兴听到是否有其他方法可以做到这一点(例如,链接到用户/已标记/标记以返回标记为&#39;标记&#39;和/的个人资料tagged / tag只返回用&#39; tag&#39;等标记的帖子,看起来它应该非常简单。
答案 0 :(得分:0)
如果它对其他人有用,我最终会像这样迭代每个标签:
<xp:inputText id="Mask">
<xp:this.converter>
<xp:convertMask mask="####-####-####-####" asis="true"></xp:convertMask>
</xp:this.converter>
<xp:this.validators>
<xp:validateConstraint>
<xp:this.regex><![CDATA[[0-9]{16}]]></xp:this.regex>
</xp:validateConstraint>
</xp:this.validators>
</xp:inputText>