目前,在添加、编辑或删除对象时,我正在使用 url 中对象的 id (pk),这当然会向用户公开该特定对象的全局主键 id。在使用 POST 时,我想以某种方式从 url 和/或表单中的隐藏字段中隐藏这些全局 id。
为了更清楚一点,让我用一个例子来解释一下。所以说我有以下型号。
模型.py
class Profile(User)
# Some fields here
class Student(Profile)
# some fields here
class Teacher(Profile)
# Some fields here
class Project(models.Model)
student = models.ForeignKey(Student)
# some more fields here.
根据上述模型,假设我想编辑或删除现有Project
实例。我目前做的是id(pk)
在网址中使用作为参数,如下所示:
网址.py
url(r'^project/(?P<id>\d+)/edit/$', 'app.views.edit_project'),
url(r'^project/(?P<id>\d+)/delete/$', 'app.views.delete_project'),
从 url 中完全隐藏这些 id 的最佳方法是什么?
有没有办法让每个学生都有项目 ID?像auto_increment
在项目表中添加另一列?