[英]How to update a foreign key field in Django models.py?
以下是來源: https : //docs.djangoproject.com/en/1.8/topics/db/queries/
首先,我們來看看models.py字段:
from django.db import models
class Blog(models.Model):
name = models.CharField(max_length=100)
tagline = models.TextField()
def __str__(self): # __unicode__ on Python 2
return self.name
class Author(models.Model):
name = models.CharField(max_length=50)
email = models.EmailField()
def __str__(self): # __unicode__ on Python 2
return self.name
class Entry(models.Model):
blog = models.ForeignKey(Blog)
headline = models.CharField(max_length=255)
body_text = models.TextField()
pub_date = models.DateField()
mod_date = models.DateField()
authors = models.ManyToManyField(Author)
n_comments = models.IntegerField()
n_pingbacks = models.IntegerField()
rating = models.IntegerField()
def __str__(self): # __unicode__ on Python 2
return self.headline
這是如何創建Blog類型的行或對象:
>>> from blog.models import Blog
>>> b = Blog(name='Beatles Blog', tagline='All the latest Beatles news.')
>>> b.save()
我的問題是如何使用我在Blog類中創建的條目更新Entry對象(存儲與Blog相關的外鍵)的博客列/屬性?
首先獲取Blog
對象,然后將其傳遞給Entry
。
b=Blog.objects.get(name='Beatles Blog', tagline='All the latest Beatles news.')
e=Entry(blog=b,headline='some headline',body_text='text here',....)
e.save()
您可以使用文檔中的解決方案。 或簡答:
b = Blog.objects.get(pk=1)
Entry.objects.filter(pk=17).update(blog=b)
update
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.