Tag: act as taggable on

Rails通过带有来自carrierwave的图像的标签显示相关post

post我试图通过使用carrierwave gem上传每个相关post的附加图像来按标签检索相关post 标签是从头开始编写的,但类似于act-as-taggable-on gem 。 下面从每个标签的Rails计数文章和相关文章标签中选择的解决方案按标题显示相关的post。 RELATED POSTS: 现在我想通过图像而不是上面的title来显示相关的post。 代码显示post的图像是 我怎样才能在上面的相关post中使用它? 我试过了 但这引发: NameError:未定义的局部变量或方法’related_post’用于# 显然, related_post没有记录在carrierwave上传器模型中,因为它与标签模型不同。 有什么帮助吗?

从Scratch标记:查询数据库问题

@saverio成功回答了关于从Scratch标记的数据库查询问题:标签云问题 现在我正在尝试将标记系统与jQuery-tokenInput连接到动态创建和查找标签,如http://railscasts.com/episodes/258-token-fields-revised 。 我的猜测是Posgresql数据库的查询问题。 我已经正确安装了Postgresql jQuery-tokenInput位于Application.js //= require jquery.tokeninput 不知何故,它可以从数据库中已有的标签加载标签,但它无法动态查询下面在pictures.js.coffee代码上列出的相同单词。 遵循所有相关范围: pictures.js.coffee jQuery -> $(‘#picture_tag_tokens’).tokenInput ‘/tags.json’ theme: ‘facebook’ prePopulate: $(‘#picture_tag_tokens’).data(‘load’) /views/pictures/_form 在这里,我的逻辑有点迷失 /models/picture.rb class Picture < ActiveRecord::Base attr_accessible :description, :title, :tag_tokens has_many :taggings has_many :tags, through: :taggings attr_reader :tag_tokens #The **below** is the relevant part for the #view/pictures/_form def tag_tokens=(tokens) self.tag_ids = Tag.ids_from_tokens(tokens) end def […]

使用acts_as_taggable_on将N个标签添加到大量对象中

我在Rails(Ruby 1.9.3)项目中使用acts_as_taggable_on gem。 我向管理员提供了一个表单,将1..n标签添加到资源列表中(假设客户端)。 我没有找到批量做到这一点的方法。 现在我循环每个客户端并添加一个标签然后保存对象。 当我尝试使用X千个客户端时,这对服务器造成很大伤害,最终导致超时。 我想知道是否有办法将标签应用于ActiveRecord集合或其他东西。 如果记录在案,我很抱歉,但我找不到有人在任何地方这样做。 我可以通过自己做一个自定义SQL查询来看到如何破解它,但我更喜欢避免像这样破坏gem,ofc。 现在我正在做这样的事情 像这样的东西 # Client.selection returns a clients collection Client.selection.each do |client| tags_to_add.each{|a| client.tag_list << a} tags_to_remove.each{|a| client.tag_list.remove(a)} client.save end 非常感谢你的时间。 额外:好吧,我需要能够删除1..n标签到一个集合!

Rails:act-as-taggable-on:在关系上使用tagged_with

假设我有一个模型A,它与模型B有一对一的关联。模型B设置为’acts_as_taggable’。 我想返回一个活动记录关系,它选择所有A实例的B属性被标记为具有某个字符串。 它看起来像:A.where(’b.tagged_with =?’,’some_tag’) 我发现了这个问题,但我有兴趣获得一个积极的记录关系,所以只有第二个解决方案是适用的,我无法让它工作。 如何恢复活动记录关系,以便我可以调用其他查询参数方法,即。 A.b_tagged_with(’tag’)。where(…)其中b_tagged_with是命名范围

仅显示acts_as_taggable_on标记云中最常用的标记

Acts-as-taggable效果很好,但是我想知道是否有办法将标签云限制为只有最受欢迎的标签? 是的,它看起来像按照创建标签的顺序对我的云进行排序。 但是让标签云只显示最受欢迎的标签更有意义。 我的控制器有: def styles_tag_cloud @tags = Tattoo.tag_counts_on(:styles).limit(40) end 我的观点是: :tagged, :controller =>:index, :id => tag.name }, :class => css_class %> 但所有这一切都是显示创建的前40个标签,然后根据其使用次数确定每个标签的大小

使用active-model-serializers错误地为act-as-taggable标签加载JSON

在Ruby 2 / Rails 4应用程序中,我尝试将acts-as-taggable-on与active_model_serializers结合使用,以创建一个JSON API,可以输出我的标签以及其他模型参数。 首先是这个问题的一些背景/动机:JSON正在被提供给ember / ember-data,截至本文撰写时,它已经删除了对JSON中嵌入式记录的支持。 文档中有关于此的假设修复,但我觉得它很笨拙,实际上并没有让它起作用。 由于我是一个Ember新手并且对Rails感觉更舒服,我想我会尝试以另一种方式解决问题,方法是将标记记录与文档记录一起加载。 我更喜欢这个解决方案,因为它对我的应用程序更有意义,但我也无法让它工作。 这是一个例子:假设我有一个使用act-as-taggable-on的Document模型: class Document < ActiveRecord::Base acts_as_taggable # other code omitted 我用一个带有一个标签的文档设置了数据库。 现在我们考虑以下情况: 1.完整对象嵌入 :使用以下序列化程序: class DocumentSerializer < ActiveModel::Serializer attributes :id has_many :tags 我的JSON具有以下格式(使用Rails 4 UUID): { “documents”: [ { “id”: “c41460fa-2427-11e3-8702-0800270f33f4”, “tags”: [ { “id”: “a33fc396-2428-11e3-8eeb-0800270f33f4”, “name”: “test” } ] } ] } […]

select2-rails + act_as_taggable_on rails 4问题

我在我的应用程序中安装了select2-rails和act_as_taggable_on gem。 我设置了act_as_taggable_on并且它可以工作(我从控制台测试)。 但是,当我尝试创建视图以便用户可以添加新标记时,它无法正常工作。 我想做一个像这样的标记支持: https : //select2.github.io/examples.html#tokenizer 。 这是我的设置: 应用程序/资产/ application.js中 $(document).ready(function(){ $(“.multiple-input”).select2({ theme: “bootstrap”; tags: true; tokenSeparators: [‘,’] }) }); 应用程序/视图/型材/ new.html.erb 当我在浏览器上打开profiles / new时,skill_list文本字段显示为它的方式,而不是使用select2标记系统。 我的代码肯定有问题或遗漏。 请帮忙。 更新1 我将代码更改为: 没运气。 所以,我安装了简单的表单gem,因为基于这篇文章( http://onewebstory.com/notes/user-friendly-tagging-on-rails),select2 rails不适用于select标签。 这是我目前的代码: 应用程序/视图/型材/ new.html.erb 应用程序/资产/ application.js中 $(document).ready(function() { $(‘input.multiple-input’).each(function() { $(this).select2({ theme: ‘bootstrap’, tags: $(this).data(‘tags’), tokenSeparators: [‘,’] }); }); }); select2正在工作,我可以使用select2搜索和下拉列表。 […]

使用acts_as_taggable_on搜索表单(Rails 3)

我有一个搜索框来搜索产品。 每个产品都有一个标题,并标有多个标签。 我希望能够按标题或标签搜索产品。 换句话说,如果我有一个名为“绿茶”的产品和另一个标记为“绿色,红色,蓝色”的产品,并且我在搜索框中输入“绿色”,我希望这两种产品都出现在搜索结果中。 我正在使用Rails 3,acts_as_taggable_on,Ruby 1.9.2。

如何使用acts_as_taggable_on缓存标签?

我有带标签上下文的模型: class Product < ActiveRecord::Base acts_as_taggable_on :categories end 我正在尝试初始化标签缓存: class AddCachedCategoryListToProducts < ActiveRecord::Migration def self.up add_column :products, :cached_category_list, :string Product.reset_column_information products = Product.all products.each { |p| p.save_cached_tag_list } end end 但是cached_category_list没有初始化。 我做错了什么? 有没有人可以使用这个gem的缓存(我的版本是2.0.6)?

通过表单更新所有者标签

我想在我的应用中唯一使用所有者标签。 我的问题是,当我通过表单创建/更新post时,我只有f.text_field :tag_list ,它只更新post的标签,但没有所有者。 如果我使用f.text_field :all_tags_list它不知道create / update上的属性。 我可以添加我的控制器: User.find(:first).tag( @post, :with => params[:post][:tag_list], :on => :tags ) 但后来我有重复的标签,用于post和所有者标签。 如何使用所有者标签?