0

出于某种原因,我需要多次运行更新数据库表。我在while循环中编写了逻辑。这样,直到达到数组长度,它才会将不同的属性值更新到数据库中。

if request.post?
  @user_new = Bookmark.new(params[:user_new])
  tags = @user_new.tags.split(",")
  i=0
  while i<tags.length
    @user_new.update_attributes(:title => @user_new.title, :url => @user_new.url, :tags => i)  
    i=i+1
  end

但似乎并非如此。

仅执行最后一条更新语句。为什么?

我怎样才能相应地运行多个更新语句?

4

1 回答 1

0

您的表的列将更新i时间,因此最终值将是tags.length. 它不仅更新最后一个,而且按顺序更新所有这些。

于 2012-12-12T10:21:44.280 回答