在我的Django项目中,我想实现这个Vue.js组件,但在这种情况下我需要来自JSON的数据:任务(带描述的待办事项)将保存在我的数据库中。
我尝试找到最佳解决方案。 用户创建一个新的" todo"然后Django将其保存到DB。
{
"newTodoText": "",
"todos": {
"regular": [
"Do the dishes",
"Take out the trash",
"Mow the lawn"
],
"priority": [],
"done": []
}
}
https://codepen.io/supraniti/full/zogjGW
在Python中执行此操作的最佳方法是什么?你能给我一些想法,解决方案吗?提前谢谢。
答案 0 :(得分:0)
json基本上是一个dict,在你的模型中,你可以修改保存功能并将dict键映射到相应的模型字段。这里有一些documentation reference
在models.py中,您需要一个Task(或Todo)模型
class Task(models.Model):
""" unit of work to be done"""
PRIORITY_LOW = 1
PRIORITY_MEDIUM = 2
PRIORITY_HIGH = 3
PRIORITY_CRITICAL = 4
PRIORITY_CHOICES = (
(PRIORITY_LOW, 'low'),
(PRIORITY_MEDIUM, 'medium'),
(PRIORITY_HIGH, 'high'),
(PRIORITY_CRITICAL, 'critical'),
)
name = models.CharField(max_length=100)
priority = models.SmallIntegerField(choices=PRIORITY_CHOICES,
default=PRIORITY_MEDIUM)
is_done = models.BooleanField(default=False)
def __str__(self):
return self.name