在rails上使用select2 gem和acts_as_taggable gem

Posted

技术标签:

【中文标题】在rails上使用select2 gem和acts_as_taggable gem【英文标题】:using select2 gem with acts_as_taggable gem on rails 【发布时间】:2015-11-06 18:21:39 【问题描述】:

我在我的 rails 应用程序中使用 select2-rails gem。我在这里发现了一个问题:

tag_list 中的问题。如您所见,它以 ["",...] 开头,有什么问题。因此,我的 tag_list 在提交后变为空。没有 select2 它工作正常。有人可以帮忙吗?

我的erb代码

<%= f.label :tag_list, "TAGS" %><br>
<%= f.select :tag_list, options_for_select([['Asst', 'As'], ['Mouse', 'Mm'], ['Yeast', 'Sc']]),,:multiple => true, :class =>"category" %>

【问题讨论】:

select2 rails form sends nothing的可能重复 【参考方案1】:

这里有两个问题:1)tag_list 参数在您的控制器中是不允许的,2)Select2 正在向您的控制器返回一个数组。为了解决这个问题,在你的控制器允许的参数中,你应该像这样声明 tag_list 参数:

tag_lists: []

它必须是复数形式。

你应该看看Rails API关于强参数。

【讨论】:

你是对的,如果表单返回像 tag_list=>"1","2" 这样的 sybmols 字符串,它就可以工作。标签列表是允许的。我应该如何将可返回值从数组更改为字符串? 收到后可以转换,这样做:tag_list.join(',')

以上是关于在rails上使用select2 gem和acts_as_taggable gem的主要内容,如果未能解决你的问题,请参考以下文章

Rails 5,带有 Select2-rails 的简单表单

Rails 5 和 select2 错误,select2 不是函数

示例 - Ruby on Rails 6/7 的 Select2 多个 AJAX 代码(没有 Gem)

Rails Acts_as_votable Gem Like/Unlike 按钮与 Ajax

select2 gem 在搜索后记住选择的选项

安装acts_as_audited 时遇到问题