python - 此类型错误的问题:save() 缺少 1 个必需的位置参数:pycharm django 中的“自我”
问题描述
我正在尝试在终端的 python shell 中保存一个查询,但似乎弹出一个错误说这个
回溯(最后一次调用):文件“”,第 1 行,类型错误:save() 缺少 1 个必需的位置参数:'self'
我不知道该怎么办。我正在尝试输入此内容post.save()
,但在我按下回车后出现了上面的错误。我正在尝试的只是输入这个
>>> from django.contrib.auth.models import User
>>> from blog.models import Post
>>> user = User.objects.get(username='user')
>>> Post.objects.create(title='One more post', ... slug='one-more-post', ... body='Post body/', ... author=user)
<Post: One more post>
>>> Post.save()
在终端
我已经尝试搜索其他人面临的相同问题,但没有一个与我的问题相匹配。模型和管理员中的所有代码都是正确的。
我已经尝试了几个网站并搜索了其他人遇到的几个问题,但我找不到解决方案。
from django.db import models
from django.utils import timezone
from django.contrib.auth.models import User
class Post (models.Model):
STATUS_CHOICES = (
('draft', 'Draft'),
('published', 'Published'),
)
title = models.CharField(max_length=250)
slug = models.SlugField(max_length=250,
unique_for_date='publish')
author = models.ForeignKey(User,
related_name='blog_posts', on_delete=models.CASCADE)
body = models.TextField()
publish = models.DateTimeField(default=timezone.now)
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
status = models.CharField(max_length=10,
choices=STATUS_CHOICES,
default='draft')
class Meta:
ordering = ('-publish',)
def __str__(self):
return self.title.
from Django.contrib import admin
from .models import Post
class PostAdmin(admin.ModelAdmin):
list_display = ('title', 'slug', 'author', 'publish',
'status')
list_filter = ('status', 'created', 'publish', 'author')
search_fields = ('title', 'body')
prepopulated_fields = {'slug': ('title',)}
raw_id_fields = ('author',)
date_hierarchy = 'publish'
ordering = ['status', 'publish']
admin.site.register(Post, PostAdmin)
解决方案
您save
直接调用 Post 模型。那不是你想做的。通常你会在你创建的 Post 实例上调用它,但实际上你根本不需要保存它,因为create
已经为你做了。
我怀疑你认为你在做什么是这样的:
post = Post(title='One more post', ... slug='one-more-post', ... body='Post body/', ... author=user)
post.save()
您在其中实例化一个名为post
(使用小写p
)的新实例,然后在该实例上调用 save 。
但正如我所说,在你的情况下,根本不需要调用 save 。
推荐阅读
- tensorflow - 在 Tensorflow 中导出推理图时出现“解析输入...形状不完整”错误
- jquery - 通过ajax api json响应在amcharts中绘制堆叠图表
- akka - 如何避免节点在 Akka Cluster 中被隔离?
- javascript - 同构反应与盖茨比(静态站点)反应
- java - 为什么 Java XPath.evaluate() 在使用实体时会抛出 NullPointerException?
- python-3.x - 如何为 sklearn 中的交叉验证的每个折叠获得多类分类的每类精度、召回率和 f1 分数?
- javascript - 过滤器内的 Javascript 映射
- python - read_csv 使用 dtypes 但列中没有值
- java - 对源代码所做的更改未在应用程序中显示 - 如何完全清除 tomcat 缓存
- sql-server - 数据层导出到 BacPac 失败