0

私はこのフォームを使用して、ユーザーに投稿方法を選択させます。彼らの名前または匿名のどちらかで。レールでForm.select値にアクセスする方法

だから、これはそのための私のフォームです:

- @anonymous.each do |a| 
=form_for @confession , html: {multipart: true} do |f| 
    =f.label :Confess 
    =f.text_area :confession , require: true 
    =f.label :post_as 
    =f.select(:postid,options_for_select([[@confession.amitian.fullname,@confession.amitian.fullname],[a.fullname,a.fullname]])) 
    =f.file_field :confessionimage 
    =f.submit 'Confess' 

今、私は私が匿名またはCURRENT_USER mのポストを構築する必要があり、そのための を投稿する自分の名前や匿名のどちらかを選択するオプションを持つユーザーはどのように混乱していコントローラこの中でそれを行うことはあなたの全体的なアプローチは、リグがある場合、私は私はわからないんだけど、事前

+0

ログから入力されたパラメータを表示できますか? – Anthony

+0

[:postid]が返すパラメータ? –

+0

すべてのパラメータは、フォームを送信するときにログに記録されます。 – Anthony

答えて

1

で、これまで

def index 
    @amitian = Amitian.where(institute: current_amitian.institute) if  amitian_signed_in? 
    @confessions = Confession.where(amitian_id: @amitian.ids).order('created_at DESC') if amitian_signed_in? 
    @anonymous = Amitian.where(email: '[email protected]') 
    if #params[:postid] == 'Anonymous' # i need an if statement to check what user has selected .. can anyone help plz ? 
    @confession = @anonymous.confessions.build 
    else 
    @confession = current_amitian.confessions.build 
    end 
end 

ありがとうやっていることですht。あなたのポスト(Confess ?!)モデルにブール値のフィールドを追加します。同様に:

rails g migration AddAnoncheckToConfess anonym:boolean

はあなたのビューでそのチェックボックスを入れて、あなたのコントローラでのご許可のparamsに追加します。ユーザーがtrueに匿名を設定している場合

は、次に、あなたのインデックス/ショービューで確認することができます:

<% if @confession.anonym == true %> 
Posted as anonymous 
<% else %> 
<%= @confession.email %> 
<% end %> 

乾杯を!

関連する問題