我正在尝试创建一个表单,该表单将在表单上提交提交之前显示记录转到的ID。例如,如果我有一个表单来创建一个新项目,而前一个项目是id 3,我希望新项目表单自动填充4,这样我就知道在提交表单之前它将是4。 / p>
感谢您提供的任何帮助!
- 标记
答案 0 :(得分:0)
如果您在没有首先在数据库中实际创建记录的情况下使用auto_increment,则无法真正执行此操作。因此,您可能需要使用不同的策略来生成记录的ID。
答案 1 :(得分:0)
不完全确定为什么要这样做,但根据所使用的数据库技术,有不同的方法。但是,您不希望使用这些方法,因为您的应用程序将不再与数据库无关。
粗略而简单的方法是选择表格中的最后一行,然后将其递增id
。
示例:
next_id = Project.last.id + 1
然而 , 我不认可这个解决方案 ,特别是因为 不保证 如果有多个用户登录并同时创建项目,则单击“保存”时next_id
将可用。
我建议使用的是另一个可用作辅助唯一标识符的列,可能类似于GUID。无论它是什么,使用可以生成的东西,并且对于该实例是唯一的。