在哪里保留长期硬编码的数据以在Django中进行初始迁移



我想创建两个类似的模型:

class LogActions(models.Model):
    name = models.CharField(default='-')
    text = models.TextField()

class Logs(models.Model):
    user = models.ForeignKey(User)
    log_message = models.ForeignKey(LogActions)
    date = models.DateField(auto_now_add=True)
    price = models.CharField(default='-', max_length=20)

在日志中,将有存储的用户操作。示例:

动作一:

name ='user_point_added'

text ='用户{user}添加指向bla bla bla(长文本...)'

将有20个动作,此操作的名称将很短,但是文本很长。

我不知道在哪里存储所有初始数据以进行迁移...该数据应在所有项目寿命中获得。

我想创建dict:

log_actions = {
    'USER_POINT_ADDED': 'User {user} added... <verylongtexthere>',
    'USER_POINT_EDITED': '<verylongtexthere>',
    'USER_POINT_DELETED': '<verylongtexthere>',
    'USER_GROUP_ADDED': '<verylongtexthere>',
}

我在django设置中所保留的所有dicts.py文件都很小,但是在设置中添加了如此不清楚的硬编码代码。Py似乎很不好...但是我需要它来初始迁移。

我是Junior Dev

您遇到了这种问题吗?您是如何解决的?

答案是在Fineanual中:使用固定装置。

https://docs.djangoproject.com/en/2.1/howto/initial-data/

最新更新