[英]How do you create model objects in a Django view?
我知道如何通過提交的表單創建模型對象,但我想知道如何在視圖中創建對象而不必通過表單。 我知道這可以通過 shell 來完成,但我有不同的理由在視圖中這樣做。
例如,假設我有一個包含標題和正文的博客表。 我將如何創建一個設置標題和正文字段的新對象?
def create_blog(request):
# Create a new blog object.
blog_obj.title= "First Blog"
blog_obj.body= "This is the body"
更新:這是我的model.py
from django.db import models
class Rating(models.Model):
movie_name= models.CharField(max_length=100)
total_ratings = models.IntegerField()
total_rating_value = models.IntegerField()
rating_average = models.DecimalField(max_digits=2, decimal_places=2)
更新 2:當我嘗試保存我的對象時,它返回一個錯誤(類“decimal.InvalidOperation”)。 rating_average 是一個 Decimal_field。 這是我的實際對象:
rating_obj = Rating(movie_name="Test Movie", total_ratings=1, total_rating_value= 5, rating_average= 5.0)
建議創建模型管理器。 來自這里的示例:
class BookManager(models.Manager):
def create_book(self, title):
book = self.create(title=title)
# do something with the book
return book
class Book(models.Model):
title = models.CharField(max_length=100)
objects = BookManager()
book = Book.objects.create_book("Pride and Prejudice")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.