【发布时间】:2016-09-04 19:52:17
【问题描述】:
django 文档说要更改 django.contrib.sites 框架中的站点名称和域,应该使用迁移 [1]。
但是他们忘记了我应该把这个迁移放在哪里。我试图创建一个名为“sites”的目录和一个名为“django.contrib.sites”的目录。但是无论我将迁移放在哪个目录中,manage.py migration 总是说没有什么要更新的。
我也尝试运行python manage.py makemigrations --empty sites,但随后在lib 目录中创建了迁移:ve/lib/python3.5/site-packages/django/contrib/sites/migrations/0003_auto_20160904_2144.py。这可能是正确的行为,但是我无法在源代码控制下设置我的更改。
如果我的迁移有问题,这里是:
from __future__ import unicode_literals
from django.db import migrations, models
def set_site_name(apps, schema_editor):
Sites = apps.get_model('django.contrib.sites', 'site')
site = Sites.objects.filter(id=1).first()
if site != None:
site.name = "name"
site.domain = "name.com"
class Migration(migrations.Migration):
initial = True
operations = [
migrations.RunPython(set_site_name),
]
所以我的问题是:django 期望在哪里找到这些迁移?
非常感谢您的帮助。
[1]https://docs.djangoproject.com/en/1.10/ref/contrib/sites/#enabling-the-sites-framework
【问题讨论】:
-
仅供参考:不需要更改“example.com”条目。如果您只是插入自己的条目,则“example.com”条目永远不会出现。
标签: python django django-models