昨天我花了所有时间试图让任何 Rails 标记插件正常工作。虽然安装很简单,但我不得不说有关如何使用这些插件的文档数量充其量是令人沮丧的......
郑重声明,我尝试过:
可标记 行为作为_taggable_on act_as_taggable_on_steroids act_as_taggable_redux
在每种情况下,文档都包含以下内容:
- 安装
- 未定义的魔法 <---(这就是我摔倒的地方,我应该在我的模型、 View 和 Controller 中放入什么才能让你的出色插件工作?拜托告诉我!)
- 看看所有这些很酷的功能!
使用所有插件,我最终都会遇到如下错误:
NoMethodError in ItemsController#create undefined method `tag_list=' for #<Item:0x47fe848>
我查找了相应插件网站上提出的问题,发现我绝对不是唯一遇到这些问题的人。但尽管大多数问题已经在不久前提出,但作者并没有提供支持/解释。
我知道,如果我是某个 Rails 专家,我可能会让这个插件工作。但我不是。在我的沮丧中,我决定推出自己的标记实现,考虑到有这么多可用的标记插件,这似乎很愚蠢......
我还不得不说,我有点担心这些插件中的大多数已经有一段时间没有维护了。这让我想知道它们是否会被带到 Rails 3。
如果有人知道有一个真正有效且易于实现的 Rails 标记插件,请告诉我(如果您能给我指出一个像样的教程,我将向您致以无尽的谢意以及一些令人惊叹的作品)就在那时我在口袋里发现了绒毛......)
否则,让这成为所有初级/中级 Rails 程序员向制作和维护插件的 Rails 大神发出的恳求……“我们喜欢你的工作,但是请提供更多文档!”
最佳答案
我使用了 mbleigh's acts-as-taggable-on ,基本过程如下:
- 将
config.gem "acts-as-taggable-on"
添加到environment.rb - 运行
rake gems:install
- 运行
script/generate acts_as_taggable_on_migration
- 对您可能需要的迁移进行任何自定义(您可能不需要)。
- 运行迁移,
rake db:migrate
- 将
acts_as_taggable_on :your_desired_tag_names
添加到您的标记模型(复数)。- 即照片模型有
:colors
标签。 - 如果您获得
NoMethodError
,您可能跳过了此步骤。
- 即照片模型有
- 要设置模型标签,请使用
photo.color_list = 'abc, 123, def, 456'
- 保存模型:
photo.save
- 列出标签:
photo.colors
- 您可能需要从数据库重新加载模型才能使用
photo.colors
方法。
- 您可能需要从数据库重新加载模型才能使用
查看 acts-as-taggable-on readme 了解更多说明/示例。
关于ruby-on-rails - 让 Rails 标记插件正常工作让我对浩克很生气,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2293117/