在一個場景中,我使用的代碼Ruby on Rails的最後找到保存的記錄
last = Category.find(:last)
這是一個類別的id指定爲父ID的子類別中查找上次保存的記錄。
所以,我以這種方式分配它。
@subcategory.parent_id = last.id
這工作得很好,但是當多個用戶正在試圖創建分類,然後有PARENT_ID的錯誤分配給子類別。 (如果最後創建的話,有時需要使用不同類別的ID。)
是否有其他方法可以找到最後一條記錄?
在一個場景中,我使用的代碼Ruby on Rails的最後找到保存的記錄
last = Category.find(:last)
這是一個類別的id指定爲父ID的子類別中查找上次保存的記錄。
所以,我以這種方式分配它。
@subcategory.parent_id = last.id
這工作得很好,但是當多個用戶正在試圖創建分類,然後有PARENT_ID的錯誤分配給子類別。 (如果最後創建的話,有時需要使用不同類別的ID。)
是否有其他方法可以找到最後一條記錄?
而不是做一個單獨的數據庫查詢,你應該在同一時間進行更改。
如果它是不可能找到你想更具體的手段類別,即last = Category.find_by_name('category I actually want')
,然後更新您都和Category
在同一個地方的相關Subcategories
(您的控制器或模型,但是你有它成立)。
試試這個例子...它可以幫助你:必須充實一點
<% Specimen.find(:all, :order => 'distribution_sheet_id DESC', :limit => 10).each do |df| %>
<%= df.id %>
<% end %>
這個問題。這是一個很好的問題,但不清楚爲什麼你在尋找最後一類,而不是使用你添加的已知類別(你添加了它,所以你可能知道它是什麼,對吧)?你認爲這個系統的行爲如何?你是如何實現這種行爲的?我只問這些問題,因爲我瞎寫了一些答案,只是發現我腦海中對於你想要完成的事情有太多問題。 Category.all.last.subcategories.create似乎太容易回答。 – 2011-06-01 05:48:59