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