2014-02-22 71 views
0

我正在創建一個答案模型,並且它的查詢部分被保存,但是它的匿名部分不是。模型保存的一些屬性,但其他的不是?

這就是我的答案模型

class Answer < ActiveRecord::Base 
    has_many :comments, dependent: :destroy 
    belongs_to :question 
    attr_accessible :anonymous, :answer, :commenter, :votes, :comments_attributes 
    accepts_nested_attributes_for :comments 
end 

這是我的形式。

<%= form_for([@question, @answer]) do |f| %> 
     <p> 
      <%= f.label :answer %> 
      <%= f.text_area :answer, :cols => "50", :rows => "30"%> 
     </p> 
     <p> 
      <%= check_box_tag(:anonymous)%> 
      <%= label_tag(:anonymous, "Anonymous")%> 
     </p> 
     <p> 
      <%= f.submit "Submit Answer" %> 
     </p> 
    <% end %> 

當我檢查我的命令提示符POST請求,初步答案和匿名有值,答案可能有串「AW; oeigh; aioewhg」和匿名都有價值。然而,當它實際創造,匿名獲得零和答案得到「一個; oewigh; oih」。爲什麼這是

這是我的控制器,如果它有任何幫助。謝謝!

def create 
     @answer = @question.answers.new(params[:answer]) 
     if @answer.anonymous == true 
      @answer.commenter = "Anonymous" 
     else 
      @answer.commenter = current_user.username 
     end 
     if @answer.save 
      redirect_to question_path(@question) 
     else 
      redirect_to questions_path 
     end 
end 

回答

0

可能是因爲您的PARAMS匿名是不是答案

內嘗試

f.check_box :anonymous 

代替

<%= check_box_tag(:anonymous)%> 
+0

<%= f.input:匿名,如:布爾%>導致未定義的方法f.input – user3340037

+0

更新了答案,再次檢查 –

+0

嗯同樣的問題。 POST請求肯定會發送匿名=> 1,但是,當它保存時,它會將匿名保存爲nil。 – user3340037

相關問題