【发布时间】:2018-12-18 15:14:55
【问题描述】:
我有以下 rails 代码(它使用简单的形式):
<%= f.input :color, collection: custom_colors.split(/\n/).reject(&:empty?) %>
custom_colors 来自一个文本区域,要求用户输入由新行分隔的条目。
问题:这显示正确,但是,当用户进行编辑时,颜色未保存并且选择为空。我使用的是典型的 rails 脚手架。
问题(续):我认为这不起作用的原因是,保存时,颜色看起来像 blue\r\n。但是,当我这样做时:
<%= field.options.split(/\n/).reject(&:empty?) %>返回blue\r,表示输入不匹配,因为blue\r\n明显不等于blue\r
我该如何解决这个问题?
【问题讨论】:
-
发布 rails 堆栈跟踪
-
@Nithin,需要明确的是,这不会产生错误,只是在用户进行编辑时没有选择正确的下拉选项。我可以发布
Thread.current.backtrace的结果,但看起来很正常。 -
你的意思是,保存正常吗?
-
@Nithin,是的,保存正常。实际上,现在您这么说,我想我已经找到了问题,但是,我不确定如何解决。保存时,颜色保存为:
blue\\r\\n,导致它与简单形式的数组不匹配。如果没有退货,我将如何保存它? -
@Nithin,抱歉,它实际上是在保存
blue\r\n而不是我之前发布的内容。但我相信同样的问题。
标签: html ruby-on-rails ruby select