问题描述
在此python manage.py makemigrations-完成之前, 还python manage.py迁移-完成
我不知道发生了什么,在本教程中,我遵循的是,没有这样的错误-模型中的语法是相同的。
from django.db import models
class Reporter(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
email = models.EmailField()
def __str__(self):
return self.first_name
class Article(models.Model):
headline = models.CharField(max_length=30)
pub_date = models.DateField()
reporter = models.ForeignKey(Reporter,on_delete=models.CASCADE)
def __str__(self):
return self.headline
class Meta:
ordering = ('headline',)
Python 3.6.12 (default,Aug 18 2020,02:08:22)
GCC 5.4.0 20160609 on linux*
Type "help","copyright","credits" or "license" for more information.
InteractiveConsole
>>> from MyApp.models import Article,Reporter
>>> r = Reporter(first_name = 'John',last_name = Doe,e-mail = 'abc@gmail.com')
File "<console>",line 1
SyntaxError: keyword can't be an expression
>>> r = Reporter(first_name = 'John',last_name = 'Doe',email = 'abc@gmail.com')
>>> r.save()
>>> r1 = Reporter(first_name = 'Boris',last_name = 'Milanovic',email = 'xyz@gmail.com')
>>> r1.save()
>>> from datetime import date
>>> a = Article(headline = 'this is our first article',pub_date = date(2020,11,01,reporter=r)
File "<console>",line 1
a = Article(headline = 'this is our first article',reporter=r)
^
SyntaxError: invalid token
>>> a = Article(headline = 'this is our first article',01),1),reporter=r)
>>> a.save()
Traceback (most recent call last):
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/utils.py",line 84,in _execute
return self.cursor.execute(sql,params)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/MysqL/base.py",line 73,in execute
return self.cursor.execute(query,args)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/MysqLdb/cursors.py",line 206,in execute
res = self._query(query)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/MysqLdb/cursors.py",line 319,in _query
db.query(q)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/MysqLdb/connections.py",line 259,in query
_MysqL.connection.query(self,query)
MysqLdb._exceptions.OperationalError: (1054,"UnkNown column 'reporter_id' in 'field list'")
那么,是不是在此版本的Django 3.1.2中存在错误?据我所知,当我使用较低版本的Django(2.1或2.0.1,我没有这个问题)进行多对多课程时。。
有什么建议吗? =而且我现在看到很多人都面临着同样的问题...
***Name of App and objects are irelevant,apply them to yours and tell me and what can I do wrong and where I am and thousands are doing wrong. ***
I got to the point to edit connections.py something regarding cursor (reocurring thing,not sure) but didn't apply ...
First I was doing with --fake (migrations) but then I somehow,when dropped all problematic tables the migrations are working.
**UPDATE FOR MORE DETAILS**
[Screenshot of my project 1][1],[Project settings 1][2],[Screenshot of project settings.py 2][3],[Fresh migration file 0001...py where is more described what's done in mirations][4],[1]: https://i.stack.imgur.com/7BE5v.png
[2]: https://i.stack.imgur.com/6bzv6.png
[3]: https://i.stack.imgur.com/jTlol.png
[4]: https://i.stack.imgur.com/oVrAF.png
此更新:我已经删除了缓存文件,删除了先前的迁移,但仍然出现以下错误:**我看到很多人在这里遇到了同样的问题,遍地,但无济于事。请帮助。.这是错误:
Python 3.6.12 (default,02:08:22)
[GCC 5.4.0 20160609] on linux
Type "help","credits" or "license" for more information.
(InteractiveConsole)
>>> from MyApp.models import Article,Reporter
>>> r = Reporter(first_name = 'Parwiz',last_name = 'Something',`email = 'xsx@sf.com')`
>>> r.save()
>>> from datetime import date
>>> a = Article(headline = 'this is our first article',pub_date = `date(2020,3),reporter=r)`
>>> a.save()
Traceback (most recent call last):
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/utils.py",in _execute
return self.cursor.execute(sql,params)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/MysqL/base.py",in execute
return self.cursor.execute(query,args)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/MysqLdb/cursors.py",in execute
res = self._query(query)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/MysqLdb/cursors.py",in _query
db.query(q)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/MysqLdb/connections.py",in query
_MysqL.connection.query(self,query)
MysqLdb._exceptions.OperationalError: (1054,"UnkNown column 'reporter_id' in 'field list'")
上述异常是以下异常的直接原因:
Traceback (most recent call last):
File "<console>",line 1,in <module>
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/models/base.py",line 754,in save
force_update=force_update,update_fields=update_fields)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/models/base.py",line 792,in save_base
force_update,using,update_fields,File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/models/base.py",line 895,in _save_table
results = self._do_insert(cls._base_manager,fields,returning_fields,raw)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/models/base.py",line 935,in _do_insert
using=using,raw=raw,File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/models/manager.py",line 85,in manager_method
return getattr(self.get_queryset(),name)(*args,**kwargs)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/models/query.py",line 1254,in _insert
return query.get_compiler(using=using).execute_sql(returning_fields)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/models/sql/compiler.py",line 1397,in execute_sql
cursor.execute(sql,params)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/utils.py",line 99,in execute
return super().execute(sql,line 66,in execute
return self._execute_with_wrappers(sql,params,many=False,executor=self._execute)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/utils.py",line 75,in _execute_with_wrappers
return executor(sql,many,context)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/utils.py",params)
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/utils.py",line 90,in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/home/Desktop/RelationshipsInDjango/lib/python3.6/site-packages/django/db/backends/utils.py",query)
django.db.utils.OperationalError: (1054,"UnkNown column 'reporter_id' in 'field list'")
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)