标签: makemigrations

Django迁移错误KeyError:('list',u'user')

我想跑

python manage.py migrate
Run Code Online (Sandbox Code Playgroud)

要么

python manage.py makemigrations
Run Code Online (Sandbox Code Playgroud)

我收到了这个错误:

Running migrations:
  No migrations to apply.
Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/Users/rostunov/temp/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "/Users/rostunov/temp/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 345, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/rostunov/temp/venv/lib/python2.7/site-packages/django/core/management/base.py", line 348, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/Users/rostunov/temp/venv/lib/python2.7/site-packages/django/core/management/base.py", line 399, in execute
    output = self.handle(*args, **options)
  File "/Users/rostunov/temp/venv/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 183, in handle
    executor.loader.project_state(),
  File "/Users/rostunov/temp/venv/lib/python2.7/site-packages/django/db/migrations/loader.py", line 338, in project_state
    return self.graph.make_state(nodes=nodes, at_end=at_end, real_apps=list(self.unmigrated_apps))
  File "/Users/rostunov/temp/venv/lib/python2.7/site-packages/django/db/migrations/graph.py", line 280, …
Run Code Online (Sandbox Code Playgroud)

python django migrate makemigrations

14
推荐指数
4
解决办法
1万
查看次数

Django - 没有这样的表异常

在Django中,我添加了一些模型models.py.之后manage.py makemigrations,manage.py migrate提出了这个例外:

django.db.utils.OperationalError: no such table: auth_test_usertranslatorprofile
Run Code Online (Sandbox Code Playgroud)

所以我删除了所有旧的迁移makemigrationsmigrate再次运行,这似乎有效.

不幸的是,我注意到,它并没有帮助,因为当我尝试点击User customer profilesUser translator profiles它会引发异常:

环境:

Request Method: GET
Request URL: http://127.0.0.1:8000/admin/auth_test/usertranslatorprofile/

Django Version: 1.8.7
Python Version: 2.7.10
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'auth_test')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware')


Traceback:
File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Python27\lib\site-packages\django\contrib\admin\options.py" in wrapper
  618.                 return self.admin_site.admin_view(view)(*args, **kwargs)
File …
Run Code Online (Sandbox Code Playgroud)

python sqlite django migrate makemigrations

11
推荐指数
7
解决办法
3万
查看次数

在Django中重命名模型(表)

所以我已经在我的数据库中为Django创建了模型,但现在想要重命名该模型.我已经更改了Meta类中的名称,然后进行迁移/迁移,但这只是创建了全新的表.

我也尝试过schemamigration但也没用,我正在使用Django 1.7

这是我的模特

class ResultType(models.Model):
    name = models.CharField(max_length=150)
    ut = models.DateTimeField(default=datetime.now)
    class Meta:
       db_table = u'result_type'

    def __unicode__(self):
        return self.name
Run Code Online (Sandbox Code Playgroud)

干杯

python django migrate renaming makemigrations

8
推荐指数
1
解决办法
9757
查看次数

Django 2.2.4 - 在 makemigrations 之后运行 migrate 时“没有要应用的迁移”

我正在尝试在 python 3.7 中的 django 2.2.4 中进行迁移。首先我尝试凑合makemiigations:

python3 manage.py makemigrations
Run Code Online (Sandbox Code Playgroud)

我得到:

Migrations for 'main':
  main/migrations/0001_initial.py
    - Create model TutorialCategory
    - Create model TutorialSeries
    - Create model Tutorial
Run Code Online (Sandbox Code Playgroud)

但后来我尝试第二步:

python3 manage.py migrate
Run Code Online (Sandbox Code Playgroud)

我得到:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, main, sessions
Running migrations:
  No migrations to apply.
Run Code Online (Sandbox Code Playgroud)

即使应该发生迁移。

我尝试删除我的迁移文件夹,然后重新制作它(里面有空__init__.py文件),但它仍然不起作用。

(注意:我一直在关注本教程:Linking models withforeign Keys - Django Web Development with Python p.9 by sentdex)

python django makemigrations

8
推荐指数
1
解决办法
1万
查看次数

return database_name == ':memory:' or 'mode=memory' in database_name TypeError: 'WindowsPath' 类型的参数不可迭代

您好,我是 python 和 django 的新手,我正在练习 django,但是当我命令 python manage.py makemigration 和 python manage.py migrate 时,我收到了标题中显示的错误。下面提到了完整的错误。

寻求帮助,谢谢

C:\Users\Manan\python projects\djangoandmongo\new_Socrai>python manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying …
Run Code Online (Sandbox Code Playgroud)

python django migrate mongodb makemigrations

8
推荐指数
1
解决办法
5489
查看次数

django makemigrations 无需用户输入即可重命名字段

我有一个名为oldName的 CharField 模型。我想将该字段重命名为newName

当我运行python manage.py makemigrations时,我收到确认请求“您是否将 model.oldName 重命名为 model.newName (a CharField)?[y/N]”

但是,我想在 docker 容器内运行整个过程,并且没有提供用户输入的规定。有没有一种方法可以在不需要用户输入的情况下强制迁移?

PS:我尝试了makemigrations 的--noinput选项。在这种情况下,不会应用迁移。

python django rename makemigrations

6
推荐指数
1
解决办法
1666
查看次数

"url"关系"app_model"上的ProgrammingError不存在第1行:SELECT COUNT(*)AS"__count"FROM"app_model"

我已经针对此错误搜索了每个Stack Overflow问题,但没有一个响应有帮助.我在尝试访问此特定模型的管理页面(AgentBasicInfo)时收到此错误.

'manage.py makemigrations'工作正常.'manage.py migrate'也运行正常.'manage.py runserver'工作正常,整个网站工作正常,直到我尝试进入此模型的管理页面.

该应用已正确安装在settings.py中的INSTALLED_APPS中.我正在使用Postgres作为数据库.

我试过了...

  1. 删除迁移并重新运行makemigrations/migrate
  2. 删除此应用的整个迁移文件夹并重新运行makemigrations/migrate
  3. 从我的所有应用中删除所有迁移并重新运行makemigrations/migrate
  4. 我尝试过运行'manage.py migrate'和'mangae.py migrate app_name'.我仍然得到同样的错误.

这个模型(见下面的代码)非常基础.我的项目中还有其他几个模型,它们在管理员中运行得很好,但只是这个特定的模型不起作用.

models.py

class AgentBasicInfo(models.Model):

    preferred_email = models.EmailField()
    office_phone_number = models.IntegerField()
    brokerage_of_agent = models.CharField(max_length=50)
    agent_title = models.CharField(max_length=20)

    def __str__(self):
        return self.preferred_email
Run Code Online (Sandbox Code Playgroud)

settings.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'postgres',
        'USER': 'postgres',
        'PASSWORD': 'lagger123',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}
Run Code Online (Sandbox Code Playgroud)

错误图片供参考

0001_initial.py

from __future__ import unicode_literals

from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel(
            name='AgentBasicInfo',
            fields=[ …
Run Code Online (Sandbox Code Playgroud)

python django migrate makemigrations

5
推荐指数
1
解决办法
429
查看次数

无法在 django 模型中添加新字段

姜戈2.0

我创建了一个模型Blog app

class Category(models.Model):
    field1 = models....
    field2 = models....
    field3 = models....
Run Code Online (Sandbox Code Playgroud)

一段时间后,我想在该模型中添加一个新字段。

class Category(models.Model):
    field1 = models....
    cover_pic = .models....
    field2 = models....
    field3 = models....
Run Code Online (Sandbox Code Playgroud)

我遵循了这个答案。但它给了我以下错误。

django.db.utils.OperationalError: (1054, "Unknown column 'blog_category.cover_pic' in 'field list'")

django django-models python-3.x makemigrations

5
推荐指数
1
解决办法
7687
查看次数

如何控制Django migrate创建的表名

上下文:Django 1.7; MySQL 5.6.23; 在AWS上运行(不确定Linux操作系统版本)

我有一个Django 1.7项目.当我在我的Windows笔记本电脑上进行本地构建数据库的初始makemigrations时,我得到的表格以我的app名称为前缀,如下所示:

myapp_person(适用于Django class Person(models.Model))

myapp_personmap(适用于Django class PersonMap(models.Model))

当我进行迁移并迁移到AWS Linux服务器时,这些表的命名方式如下:

MyApp_person

MyApp_personmap

注意应用程序名称前缀的意外CamelCase和其余表名称的预期小写.

我的问题:

  1. 什么控制表的appname前缀(例如"myapp_person"中的"myapp_")?
  2. 如何让迁移在AWS上使用全部小写,就像在我的Windows笔记本电脑上本地一样?

mysql django amazon-web-services amazon-elastic-beanstalk makemigrations

4
推荐指数
1
解决办法
4447
查看次数

在 AL2 上的弹性 beantalk 上运行 Django manage.py shell 命令

我在 AWS Elastic Beanstalk(在 Amazon Linux 2 上)上启动并运行了我的 Django 服务。eb deploy完美地工作。但是我想通过 eb 从 Django 的 shell 运行一些函数,或者在我的数据库上执行迁移。

在我eb ssh <environment-name>找不到manage.py文件后,我无法找到我的包裹。

相关问题 -从 AWS EB Linux 实例运行 manage.py

我相信它可能已经过时了?

django amazon-web-services amazon-elastic-beanstalk makemigrations amazon-linux-2

4
推荐指数
1
解决办法
782
查看次数