simple_form と devise (RoR gems) を使用して、新規ユーザーとユーザーの編集フォームを作成しました。チェックボックス機能を追加して、ユーザーが受け入れる支払い方法を選択できるようにしました。ただし、フォームに入力して更新した後、ユーザーページは、チェックされたアイテムを表示しながら、このダッシュ、ゼロ、およびその他の記号を生成します。
例: (フォームを更新したときに、「デビット カード」と「PayPal」にチェックを入れたところ、次のようになりました。
利用可能な支払い方法: --- - デビットカード - 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
また、簡単な背景を説明すると、最初はacts_as_tggable_onをsimple_formとdeviseで実装して、後でペイモード(支払い方法)でユーザーをフィルタリングできるようにしようとしました。しかし、これはうまくいかなかったので、単純化してこれにしました。その後、タグ付け関連のコードをすべて削除しました。これは、取得しているシンボルと関係がありますか?
ありがとうと助けていただければ幸いです!