我正在尝试创建一个具有选项的表单,如果选中该选项,将通过复选框向数据库返回true或false。我已经将该列添加到我的数据库中,就像一样
rails g migration AddWantSellToPosts want_sell?:boolean
并且还向控制器页面添加了必要的参数,以便传递数据。但是,没有向数据库返回任何值。我怀疑这是我在Rails中实现的check_box,但我仍然不确定。
这是html.erb
<%= f.text_field :price, :id => 'price' %>
<%= f.check_box :want_sell? %>
这是post_controller.rb
before_action :authenticate_user!, only: [:new, :create, :destroy]
@post = Post.new params[:post].permit(:description, :picture, :tag_names, :price, :want_sell?)
@post.user = current_user
我应该补充一点,我是rails和编码的新手,所以我可能错过了一些非常明显的东西!
感谢
在我的评论中。。。
将列重命名为want_sell
,want_sell?
是一个动态方法,Rails将使用它来检查布尔值是否为true/false。此外,请务必致电@post.save
。