说我有一个Post模型.当我删除上一篇文章"Post 24"时,我希望下一篇文章采用Post 24而不是Post 25的ID.
我想在视图中显示id,我不想丢失数字.我怎么做?
谢谢你的帮助.
id的目的只不过是内部标识符.它根本不应公开使用.这不是Rails的事情,而是数据库问题.MySQL不会回收id,因为它可能会导致你的应用程序出现非常严重的并发症.如果删除了一条记录,它的id将被永久地放置,以便将来的记录不会被误认为是.
但是,有一种方法可以做你想要的.我相信你想要一个position
整数列.将其添加到您的模型/表,然后安装acts_as_list插件.
按常规方式安装:
script/plugin install git://github.com/rails/acts_as_list.git
Run Code Online (Sandbox Code Playgroud)
然后在模型中添加"hook":
class Post < ActiveRecord::Base
acts_as_list
end
Run Code Online (Sandbox Code Playgroud)
现在position
,您的帖子模型的列将自动跟踪自己,没有序列间隙.如果您愿意,它甚至会为您提供一些方便的重新订购方法.
归档时间: |
|
查看次数: |
69 次 |
最近记录: |