【发布时间】:2019-09-17 23:17:47
【问题描述】:
我的记录/model.py 是,
class HistoricalRecords(models.Model):
user = models.ForeignKey('User', on_delete=models.CASCADE, null=True, blank=True)
role = models.CharField(max_length=255, null=True, blank=True)
model = models.CharField(max_length=255, null=True, blank=True)
torque = models.IntegerField(null=True, blank=True)
car = models.TextField(null=True, blank=True)
date_time = models.DateTimeField(default=timezone.now)
我的记录/serializer.py 是
class SaveAuditRecordSerializer(serializers.ModelSerializer):
class Meta:
model = HistoricalRecords
fields = ('user', 'role', 'model', 'torque', 'car', 'date_time')
我的记录/views.py 是,
def AuditRecord(request):
serializer = SaveAuditRecordSerializer(data=request, partial=True)
if serializer.is_valid():
serializer.save()
return Response(status=status.HTTP_201_CREATED)
return Response(serializer.errors,
status=status.HTTP_201_CREATED)
我正在尝试从另一个应用程序的另一个视图中调用此 AuditRecord(req),例如
rec = {}
audit_record['user'] = request.user
audit_record['role'] = "Role"
audit_record['model'] = "M"
audit_record['torque'] = 22222
audit_record['action'] = "car created"
audit_record['date_time'] = datetime.now()
AuditRecord(audit_record)
我没有收到任何错误,但它没有保存到数据库 我的方法有什么错误吗?
【问题讨论】:
-
你为什么要这么做?为什么不直接在该视图中创建记录,例如使用
HistoricalRecords.objects.create(...)? -
内部记录/views.py ?
-
在“另一个应用程序的视图”中。
-
我应该在这段代码中做哪些修改以通过序列化程序保存数据?
标签: django python-3.x django-rest-framework django-views serialization