我需要生成一个唯一的递增数字,它将成为更复杂的发票号码的一部分。我想在应用程序中保留增量逻辑。
我必须恢复目前正在另一个系统上进行的编号。
我打算做Model.maximum(:custom_number).next
但是如何从给定数字开始custom_number
列?
答案 0 :(得分:0)
如果我理解你的问题,你只需要将表(Model)的主键索引重置为你想要的数字。
如果你正在使用MySQL或PostgreSQL,那么:
ALTER SEQUENCE tablename_id_seq RESTART WITH 1453;
然后下一条记录将包含索引,在这种情况下为1453
要访问,数据库控制台只需在您的控制台上运行 rails db
修改
before_filter :check_invoice_number
def check_invoice_number
self.invoice_column = Model.last.invoice_column + 1
end