我使用 Ruby on Rails 生成了一个引脚 Controller ,想了解引脚 id
在销毁引脚后如何工作。
我创建的第一个 pin 的 pin id
为 1,第二个 pin 的 pin id 为 2
。销毁第二个引脚并创建一个新引脚后,我创建的最后一个引脚 id
为 3。
为什么销毁第二个 pin 后创建的 pin 的 id
不是 2?有没有办法将其设置为该值?
除非指定,否则数据库记录的 id
通常会自动递增。这就是为什么每次您删除一条记录然后创建一条新记录时,新记录都会获得下一个数字作为其 id
。
是的,如果您想将 id
设置为其他内容,您可以更新记录。
例如,您有一个 Pin
模型,它具有 id
和 name
属性。
您可以像这样创建图钉:
pin = Pin.create(name: 'Pin1')
因此,它将获得 id = 1
。但是,如果您销毁此 pin 对象并以类似方式重新创建另一个对象:
pin = Pin.create(name: 'Pin1')
它会得到 id = 2
等等。
但是,如果您愿意,您可以更新它的 id
属性(尽管在实际应用程序中您不想这样做!):
pin.id = 1
pin.save
现在,它的 id 又是 1
。
因此,理论上是可行的,但您不应该在实际应用程序中手动修改数据库记录 ID。
我是一名优秀的程序员,十分优秀!