今天在做一个产品和订单的多对多关系中,在提交view中使用如下代码
<% for product in @products %>
<div>
<%= check_box_tag "order[product_ids][]", product.id, @order.products.include?(product) %>
<%= product.name %>
</div>
<% end %>
提交后 order.save 总是不能执行成功
一直不能找到原因。
怀疑是多对多关系表或者是表之间的关系声明有问题,因为这个方法我已经使用了n次,一直都是成功的。
于是建立一个members_orders表,并声明其关系。
果然一次通过。
看来一定是我的表建错了或者是关系声明错了。
找了一圈,不是这个问题。
有点绝望的说。。
麻木的操作着那个成功的 order member多对多关系,无聊的点击。
忽然发现选择某个数据的时候,程序没有通过。
在数据库中比较发现,这条数据并没有满足 member.rb中定义的 validates。
补全数据后,提交,通过。
原来多对多还涉及到这样的validates问题。
<% for product in @products %>
<div>
<%= check_box_tag "order[product_ids][]", product.id, @order.products.include?(product) %>
<%= product.name %>
</div>
<% end %>
提交后 order.save 总是不能执行成功
一直不能找到原因。
怀疑是多对多关系表或者是表之间的关系声明有问题,因为这个方法我已经使用了n次,一直都是成功的。
于是建立一个members_orders表,并声明其关系。
果然一次通过。
看来一定是我的表建错了或者是关系声明错了。
找了一圈,不是这个问题。
有点绝望的说。。
麻木的操作着那个成功的 order member多对多关系,无聊的点击。
忽然发现选择某个数据的时候,程序没有通过。
在数据库中比较发现,这条数据并没有满足 member.rb中定义的 validates。
补全数据后,提交,通过。
原来多对多还涉及到这样的validates问题。