rails simple_form字段与模型没有直接关系

时间:2016-07-01 20:33:20

标签: ruby-on-rails

我是第一次使用简单表格的rails。我有一个文章模型和标签模型。 @ article.tags给我所有与特定文章相关的标签。

我正在尝试构建一个表单(如stackoverflow),其中标签可以以逗号分隔值的形式输入。由于标签只是名称作为字符串值而不是对象,因此如何在发布表单时阅读这些标签以及如何使用简单表单呈现此标签文本框的html输入。另外,如何以编辑形式将标记作为逗号分隔值。

2 个答案:

答案 0 :(得分:1)

我建议你看看茧宝石(https://github.com/nathanvda/cocoon)。它用于嵌套字段,因此您可以动态添加新字段(在本例中为标记的新输入)。它使用起来并不复杂,对用户体验有点好处。

答案 1 :(得分:1)

我建议:Select2通过select2-rails gem。

特别是他们称之为Tagging

我通过加载js:

来实现它
function select2() {
  $('.select2').select2({
    theme: 'bootstrap',
    width: '100%'
  });
}

function select2Tags() {
  $('.select2_tags').select2({
    tags: true,
    theme: 'bootstrap'
  });
}

$(select2);
$(select2Tags);

我会这样做:

<%= f.association :tags, collection: Tag.all,
                               input_html: {class: 'select2'} %>

但这需要事先创建标签。