在保存到数据库之前处理数据 Django Tastypie

Processing data before saving to database Django Tastypie

我向服务器发送了一个字符串,我想在保存到数据库之前将其转换为时间戳。

我想在保存数据之前执行此功能。

date = time.strptime(date, "%Y-%m-%d %H:%M:%S")

日期以字符串形式发送,我想在保存到数据库之前将其转换为时间戳。

感谢您的帮助。

#models.py
from tastypie.utils.timezone import now
from django.db import models
from django.utils.text import slugify


class Entry(models.Model):
    pub_date = models.DateTimeField()
    Temperature = models.FloatField()

    def __unicode__(self):
        return self.title

#api.py
from tastypie import fields
from tastypie.resources import ModelResource
from models import Entry
from tastypie.authorization import Authorization 

class EntryResource(ModelResource):
    class Meta:
        queryset = Entry.objects.all()
        resource_name = 'entry'
        authorization = Authorization() 

对您的资源使用 hydrate 方法。

class EntryResource(ModelResource):


    def hydrate(self, bundle):

        if  field in bundle.data:
                    date = bundle.data['pub_date']
                    bundle.data['pub_date'] =  time.strptime(date, "%Y-%m-%d %H:%M:%S")

        return bundle