【发布时间】:2018-06-13 14:49:51
【问题描述】:
使用 Django 2.0 我有一个名为 Book 的模型类,它要求输入 title、author、year,但我在该行中有另一列需要基于作者姓名的唯一 ID,书标题和随机数。这是我的模型
class Book(models.Model):
title = models.CharField(max_length=200)
author = models.CharField(max_length=50)
year = models.PositiveSmallIntegerField()
identification = models.CharField(max_length=50, blank=True)
holder = models.ForeignKey('Person', related_name='book_holder', on_delete=models.PROTECT(), null=True, blank=True)
available = models.BooleanField(default=True, blank=True)
overdue = models.BooleanField(default=False, blank=True)
它将用于只要求title、author 和year 的表单,但我要寻找的是如何在用户提交表单后填写identification 列。因此,例如,如果用户为title 输入Harry Potter,为author 输入J. K. Rowling,我希望identification 的值是两者的组合加上最后一个八位随机数,例如JH28194637 但我还需要这个专栏对于每本书都是独一无二的,所以如果我必须阅读相同的《哈利波特》书籍,我需要两者都不同,所以一个可以是 JH28194637 而另一个可以是 JH39287104 .我将使用 ajax 提交我的表单,并且我正在考虑在我的 javascript 中可能有一个变量,当用户填写 author 和 title 字段然后将其传递给我的 ajax 调用时,它会构建我的 identification。那会是最好的方法吗?但是,我将如何检查变量值是否已存在于数据库中,或者执行此任务的最佳方法是什么。
【问题讨论】:
标签: ajax django database django-models django-forms