python - Django默认数据(Fixtures?)在views.py中的form.save()上?

标签 python mysql json django

想知道每次使用 form.save() 创建新帐户时,Django 中插入一些默认数据库数据的最佳方法是什么。

假设用户刚刚创建了一个新的商家资料帐户,我想在 form.save() 之后预加载使用新商家 ID 和今天日期自定义的数据(这样我就有了可用的新帐户 ID)。

显然,我可以使用硬编码方法并编写 10 行 Model.objects.create(...) 并完成它,但我想知道什么是“正确的” Django/pythonic 方式通过 JSON 固定文件等来做到这一点。

最佳答案

如果您只关心创建一个 id,您可以拥有一个允许为空的字段和自动 id 字段的模型。其他字段也可以有默认值。默认字段选项还允许回调。 例如:-

created_at = models.DateTimeField(default=datetime.now)

查看:https://docs.djangoproject.com/en/1.9/topics/db/models/#field-options

本质上可以使用 form.save() 中的一行代码创建具有所有可为空字段或默认值字段的模型。假设您打算仅创建一个默认模型对象。

至于正确的方法,您可能希望在模型和正确的关系(FK)中使用简单的标志(将业务配置文件记录为事件状态,而默认业务配置文件为非事件状态等),以便用户无法重复创建默认业务配置文件。

关于python - Django默认数据(Fixtures?)在views.py中的form.save()上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36377066/

相关文章:

python - 如何在 Pydev Eclipse 编辑器边距中标记 pylint 警告?

python - 如何根据条件拆分列表?

php 和 MySQL 初学者接受用户输入、修改数据库并返回值

php - 如何将内容加载到类似灯箱的叠加层中

mysql - MySQL 变量的使用是原子的并且是特定于用户的吗?

python - 使用 Python 解析 JSON 文件中的数据

python - 将 Python 对象转换为 JSON 字符串

python - 用于捕获货币汇率的正则表达式

json - npm init 没有在我的 mac 上创建 package.json

python - 如何输出 XML 实体引用