如何在代码中更改“example.com”?

时间:2010-01-21 07:04:13

标签: python django

我在我的mysite文件中构建了一个a.py

a.py:

from django.core.management import setup_environ
from mysite import settings

setup_environ(settings)

from django.contrib.sites.models import Site
domain = Site.objects.get_current().domain
print domain

打印:

  

:example.com

如何将“域名”更改为127.0.0.1:8000?


from django.core.management import setup_environ
from register import settings
setup_environ(settings)


from django.contrib.sites.models import Site
#domain = Site.objects.get_current().domain
#print domain

from django.contrib.auth.models import User 
obj=Site.objects.get(id=1).update(name='sss')
print obj

错误:

Traceback (most recent call last):
  File "D:\zjm_code\register\a.py", line 13, in <module>
    obj=Site.objects.get(id=1).update(name='sss')
AttributeError: 'Site' object has no attribute 'update'

3 个答案:

答案 0 :(得分:8)

转到管理界面中的Site模型并更改其中的值。或者在Django提示符下对Site进行查询,然后修改并保存模型。

答案 1 :(得分:4)

将文件调用initial_data.json放入项目目录中,其中包含以下内容: [{ "pk": 1, "model": "sites.site", "fields": { "name": "localhost:8080", "domain":"localhost:8080" } } ] 然后使用python manage.py syncdbetvoilà更改设置。

答案 2 :(得分:1)

与whrd评论一样,您无法就update(...)上的get(...)调用结果致电QuerySet。更改代码的更好方法如下:

from django.core.management import setup_environ
from register import settings
setup_environ(settings)

from django.contrib.sites.models import Site

obj=Site.objects.get(id=1)
obj.name='sss'
obj.save()
print obj