Django模型与crud操作

时间:2011-06-21 00:28:19

标签: python django django-models

使用Django并坚持如何使用Models.Manager进行模型c.r.u.d操作。 我正在使用的字段是邮政编码,城市,纬度,经度,坐标和当前时间。 我想插入一个带有邮政编码,城市,纬度,经度和当前时间的新条目。 此外,想要通过邮政编码更新现有记录。最后,通过邮政编码返回城市获取记录,并通过邮政编码返回城市,州和坐标(纬度和经度)获得记录。

from django.db import models
from datetime import datetime

class Name(models.Model):
    zipcode     = models.CharField(max_length=5, primary=True, blank=False)
    city        = models.CharField(max_length=50, blank=False)
    state       = models.CharField(max_length=2, blank=False)
    latitue     = models.CharField(max_length=15, blank=False)
    longitue    = models.CharField(max_length=15, blank=False)
    curr_time   = models.datetime(default=datetime.now, blank=False)

2 个答案:

答案 0 :(得分:3)

您应该再阅读django文档https://docs.djangoproject.com/en/1.3/。本教程中有一部分讨论了保存和更新模型。但是,在回答你的问题时......

from models import Name
from datetime import datetime

# create a new model
name = Name(city='New York', state='NY')
# fields can also be set this way
name.zipcode = '10027'
# save the model to the database
name.save()
# find a model by zipcode
name = Name.objects.filter(zipcode='10027')
# modify it
name.curr_time = datetime.now()
# save it
name.save()

简单,对吧?

答案 1 :(得分:0)

对于curr_time字段,您可以使用:

curr_time = models.DateField(auto_now=True)
# or auto_now_add=True, if you want set this field only at the creation.

更多信息:https://docs.djangoproject.com/en/dev/ref/models/fields/#datefield