首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails表单搜索或创建

Rails表单搜索或创建
EN

Stack Overflow用户
提问于 2016-08-26 02:01:09
回答 1查看 56关注 0票数 0

在作为关联品牌的Product模型中,我希望有一个输入字段,我可以在其中选择一个现有品牌或添加一个新品牌。

在我所拥有的表单中:

代码语言:javascript
复制
<%= f.fields_for :brand do |b| %>
<div class="form-group">
  <%= b.label :name, t('brand.one') %>
  <%= b.select :name, options_from_collection_for_select(Brand.all, :name, :name, product.brand.name), { include_blank: true}, class: '0select2-find-or-create' %>
</div>
<% end %>

在模型中:产品:

代码语言:javascript
复制
belongs_to :brand
accepts_nested_attributes_for :brand, limit: 1

品牌:

代码语言:javascript
复制
has_many :products

但每次我更改产品的品牌时,它都会更改该品牌的名称(通过品牌id),而不是更改id。

此外,对于创建新品牌的部分,我将尝试使用带有tags选项的select2。还有其他建议吗?

EN

回答 1

Stack Overflow用户

发布于 2016-08-26 03:41:43

我想可能是因为你的options_from_collection_for_select(Brand.all, :name, :name, product.brand.name)

我相信对于第二个参数,您需要的是id而不是:name

参考:http://apidock.com/rails/v4.2.1/ActionView/Helpers/FormOptionsHelper/options_from_collection_for_select

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39151962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档