我有一个模型,其中我有一个布尔属性published
。在我的Post
控制器中,我已将其添加到我允许的属性中。像这样:
params.require(:post).permit([...], :published)
我应该列出所有已发布帖子的索引操作如下所示:
def index
if session[:user_id]
@posts = Post.paginate(:page => params[:page])
else
@posts = Post.where("published = 1").paginate(:page => params[:page])
end
end
最后我的表格看起来像这样:
= form_for @post, :html => { :multipart => true } do |f|
[...]
.field
= f.label :published, "Publicera:"
= f.check_box :published
.actions
= f.submit
目前我的索引页面上没有帖子,即使我或者新的或更新视图都选中了复选框。而且我不确定如何修复它,任何想法?
答案 0 :(得分:1)
问题似乎在于我的谓词。这很有效:
@posts = Post.where(:published => true).paginate(:page => params[:page])