python - TypeError: __init__() 得到了一个意外的关键字参数“主题”
问题描述
当我向查询集添加值时,我得到了这个错误。
模型.py
from django.db import models
class Topic(models.Model):
def __init__(self):
topic=models.CharField(max_length=264,unique=True)
def __str__(self):
return self.topic
class Webpage(models.Model):
def __init__(self):
topic=models.ForeignKey(Topic)
name=models.CharField(max_length=264,unique=True)
url=models.URLField(unique=True)
def __str__(self):
return self.name
class AccessRecord(models.Model):
def __init__(self):
name=models.ForeignKey(Webpage)
date=models.DateField()
def __str__(self):
return str(self.date)
#t=Topic(topic="shoaib")
Traceback (most recent call last):
File "<console>", line 1, in <module>
TypeError: __init__() got an unexpected keyword argument 'topic'
解决方案
您不应该重新定义 Django 模型init。尝试这样的事情:
class Topic(models.Model):
topic=models.CharField(max_length=264,unique=True)
def __str__(self):
return self.topic
推荐阅读
- reactjs - 如何确保 react-redux 应用程序是根据最新请求呈现的?
- context-free-grammar - 如何找到一种语言的语法,其中一个符号的重复次数不及其他符号的总和?
- azure - 更改恢复服务保管库中的冗余?
- javascript - React hooks:引用组件的父级
- javascript - NestJS:记录来自 HttpService 调用的请求/响应?
- c++ - Qt moveCursor 不再改变选择边界
- kubernetes - 如何让 Kubernetes Pods 对某些连接使用透明的 SOCKS5 代理?
- node.js - 如何重新调整 mongoDB 数组中值的最大出现次数
- java - AWS Elastic Beanstalk 上的 HTTP Post 对象的 UTF-8 编码问题
- rest - 如果我尝试使用数据库中的现有记录发布一个 POST 请求会发生什么