[英]Rails: auto increment column with scope
我有項目和問題。 問題編號(不是ID)必須是自動增量,但是使用project_id確定范圍。 任何寶石或簡單的方法來實現這一目標? 謝謝!
編輯:acts_as_list將完成工作,但如果刪除記錄怎么辦? 下一期將是它的號碼。
在您的問題類中:
belongs_to :project
before_validation( :on => :create ) do
self.issue_number = self.project.issues.collect { | issue | issue.issue_number }.max + 1
end
(或左右) - 基本上,在創建新對象之前,找到與問題項目相關的問題的最大問題編號,增加該問題,並將其用於新的問題編號...
您可以在Project問題關聯上使用counter_cache並覆蓋Project的decrement_counter以不執行任何操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.