我對Rails有點新,而且我有一個簡單的應用程序和一些故事。我想讓這個功能輕鬆地隱藏我現在不想出現的故事。其他功能設置相同的方式工作正常,除了這一個布爾值。Rails將不會保存布爾值「隱藏」的值,但會保存其他值
def hide
@story = Story.find(params[:id])
@story.hidden = true
if @story.save
redirect_to :controller => 'pages', :action => 'home'
else
redirect_to :controller => 'stories', :action => 'show', :id => @story.id
end
end
因爲當此功能運行時,它不會更新故事的「隱藏」屬性,但@ story.save返回true(它的if語句的第一部分)的一些原因。我是否做了錯誤的設置@ story.hidden = true?我正在使用sqlite,如果這很重要。謝謝!
這會繞過記錄上的驗證。由於OP是Rails的新手,我認爲不建議這樣做,除非您爲這種方法提供了缺陷。 – 2010-11-07 00:36:33
這是一個很好的觀點,但是對於他們正在努力完成的任務而言,它並沒有失去任何功能,並且正在使用靜態硬編碼來更新布爾值 – s84 2010-11-07 00:43:34