【问题标题】:Saving different texts in database. Django在数据库中保存不同的文本。姜戈
【发布时间】:2016-01-12 11:45:31
【问题描述】:

它是关于用 Python 和 Django 编写的 Web 应用程序。 我希望用户同意使用他们提供的个人数据并将同意保存在数据库中。

同意模型:

class Consent(models.Model):
    user = models.ForeignKey(User, unique=True)
    date = models.DateTimeField(auto_now_add=True)

用户在显示同意政策、复选框和提交按钮的网页上表示同意。 我想为每个用户保存用户在同意模型中给予同意(同意策略)时看到的文本。因此,稍后当我更改同意政策文本时,我可以知道用户在同意时看到了哪些文本(出于法律目的)。

我不知道在每次同意时将文本保存在数据库中是否好。目前,该文本大约 55 个单词和 350 个字符长。

有没有比添加更好的方法

consent_policy = models.TextField()

是否符合同意模型?

此外,我支持两种不同的语言,因此我的文本位于单独的 django.po 文件中。

提前致谢。

【问题讨论】:

    标签: python mysql django django-models


    【解决方案1】:

    您可以创建另一个主题,而不是保存整个文本

    class Consent(models.Model):
        text = models.TextField()
        version = models.IntegerField()
    

    然后你可以在你的用户模型中注册为 Foreginkey 来跟踪用户阅读的版本

    class YourUser(models.Model):
        user = models.ForeignKey(User, unique=True)
        consent = models.ForeignKey(Consent)
        name = models.CharField(length=30)
    

    【讨论】:

      猜你喜欢
      • 2021-09-17
      • 1970-01-01
      • 2014-07-23
      • 2012-05-29
      • 2018-04-12
      • 2011-12-24
      • 2016-09-22
      • 2020-08-16
      • 2011-05-15
      相关资源
      最近更新 更多