我使用 simple_form 和 devise (RoR gems) 来制作一个新用户和编辑用户表单。我添加了一个复选框功能,以便用户可以选择他们接受的付款方式。但是,在填写和更新表单后,用户页面会生成此破折号、零和其他符号,同时还会显示选中的项目。
示例:(当我更新表格时,我检查了“借记卡”和“PayPal”。结果如下:
接受的付款方式:--- - 借记卡 - 贝宝 - ''
我知道这可能是一个愚蠢的问题,但有谁知道我怎样才能摆脱不必要的符号?我是一个完整的 RoR 初学者,我真的很难理解所有代码。
对于我的 edit.html.erb(这也是用户访问以查看个人资料页面的内容),我使用了以下代码:
<%= simple_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => {:method => :put, class: 'form-horizontal'}) do |f| %>
<%= f.error_notification %>
<%= f.input :name %>
Payment Methods Accepted:
<%= @user.paymode %>
<div class="checkboxes">
<p>
<%= f.collection_check_boxes :paymode, [['Cash', 'Cash'] ,['Credit Card', 'Credit Card'] ,['Debit Card', 'Debit Card'] ,['PayPal', 'PayPal']], :first, :last, {:item_wrapper_class => 'checkbox_container'} %>
</div>
然后在我的 user.controller.rb 文件下定义
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
另外,为了简要介绍一下背景:我最初尝试使用 simple_form 实现acts_as_taggable_on 并设计,以便我最终可以稍后通过 paymode(支付方式)过滤用户。但是,这并没有奏效,所以我只是将其简化为这个。之后我删除了所有与标签相关的代码。这与我得到的符号有什么关系吗?
感谢和帮助将不胜感激!