Python 编程错误列不存在

Python 编程错误列不存在,python,django,postgresql,object,models,Python,Django,Postgresql,Object,Models,models.py class PlansToLodge(models.Model): sm_sequence = models.IntegerField() sm_year = models.IntegerField() location = models.TextField(blank=True, null=True) car_number = models.CharField(max_length=100, blank=True, null=True) client_or_owne

models.py

class PlansToLodge(models.Model):
sm_sequence = models.IntegerField()
sm_year = models.IntegerField()    
location = models.TextField(blank=True, null=True)
car_number = models.CharField(max_length=100, blank=True, null=True)
client_or_owner = models.TextField(blank=True, null=True)
date_received = models.DateField(blank=True, null=True)
date_lodged = models.DateField(blank=True, null=True)
remarks = models.TextField(blank=True, null=True)
sent_or_received = models.TextField(blank=True, null=True)    
receipt_number = models.TextField(blank=True, null=True)

class Meta:
    managed = False
    db_table = 'plans_to_lodge'
    unique_together = (('sm_sequence', 'sm_year'),)
view.py

def searchPlanInfo(request):
logger = logging.getLogger(__name__)
if request.user.is_authenticated():
    if request.method =='POST':
        if request.POST['smYear'] is not '':
            searchPlan = request.POST['smYear']
            logger.error('lets see here')
            foundPlan = PlansToLodge.objects.filter(sm_year=searchPlan)
            logger.error(foundPlan[0])

            context = {'parcel_list': foundPlan}
            return render(request,'parcelmanager/index2.html',context)
        return HttpResponse("once again")
回溯

回溯:

File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\core\handlers\base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Sites\Landregistry\surveyplanmanager\views.py" in searchPlanInfo
  39.               logger.error(foundPlan[0])
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\models\query.py" in __getitem__
  201.         return list(qs)[0]
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\models\query.py" in __iter__
  162.         self._fetch_all()
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\models\query.py" in _fetch_all
  965.             self._result_cache = list(self.iterator())
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\models\query.py" in iterator
  238.         results = compiler.execute_sql()
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\models\sql\compiler.py" in execute_sql
  829.             cursor.execute(sql, params)
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\backends\utils.py" in execute
  79.             return super(CursorDebugWrapper, self).execute(sql, params)
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\backends\utils.py" in execute
  64.                 return self.cursor.execute(sql, params)
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\utils.py" in __exit__
  97.                 six.reraise(dj_exc_type, dj_exc_value, traceback)
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\utils\six.py" in reraise
  658.             raise value.with_traceback(tb)
File "C:\Users\yfevrier\Envs\landregtry1\lib\site-packages\django\db\backends\utils.py" in execute
  64.                 return self.cursor.execute(sql, params)

Exception Type: ProgrammingError at /surveyplanmanager/searchPlanInfo/
Exception Value: column plans_to_lodge.id does not exist
LINE 1: SELECT "plans_to_lodge"."id", "plans_to_lodge"."sm_sequence"...
               ^

现在,在我使用sqlite之前,但我们进入了我们将使用Postgresql的数据库,我知道在sqlite中,它生成了这些“id”字段,但我不知道为什么它对Postgresql这样做,我已经迁移了,所以不应该发生这种情况

实际上发生这个错误是因为您的数据库没有迁移

所以运行以下命令来迁移数据库

python manage.py migrate
如果未运行此命令,则运行以下命令

python manage.py makemigrations
python manage.py migrate

实际上,发生此错误是因为您的数据库未迁移

所以运行以下命令来迁移数据库

python manage.py migrate
如果未运行此命令,则运行以下命令

python manage.py makemigrations
python manage.py migrate

我做到了,它告诉我的是没有发现任何变化。当我执行python manage.py showmigation时。我的所有应用都有其初始迁移。可能发生的情况是,我从另一个数据库导入了一个表,但无法迁移到该表。它告诉我它已经存在,所以我伪造了它。因为它有我测试所需的数据,所以我没有管理表!将它改回True,迁移过程顺利,但仍然显示出相同的错误,所以我现在尝试做的是sqlmigrate,它没有显示任何内容,但我可以sqlmigrate初始迁移我完成了迁移,我认为所有内容都是同步的。我要做的是做一个inspectdb,然后从文件夹中删除我的原始迁移,然后进行迁移(它进行了迁移),但它仍然显示相同的错误您是对的我尝试了另一个表,但没有发现问题,但该表在我迁移之前存在,因为其中包含我想用于测试的信息,它告诉我的只是没有发现任何变化。当我执行python manage.py showmigation时。我的所有应用都有其初始迁移。可能发生的情况是,我从另一个数据库导入了一个表,但无法迁移到该表。它告诉我它已经存在,所以我伪造了它。因为它有我测试所需的数据,所以我没有管理表!将它改回True,迁移过程顺利,但仍然显示出相同的错误,所以我现在尝试做的是sqlmigrate,它没有显示任何内容,但我可以sqlmigrate初始迁移我完成了迁移,我认为所有内容都是同步的。我要做的是做一个inspectdb,然后从文件夹中删除我的原始迁移,然后进行迁移(它进行了迁移),但它仍然显示相同的错误您是对的我尝试了另一个表,但没有发现问题,但该表在我迁移之前存在,因为其中包含我想用于测试的信息