2010-01-21 53 views
2

我建我的mysite文件a.py如何在我的代码中更改'example.com'?

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' 

回答

1

和whrd一样,QuerySet致电get(...)的结果不能致电update(...)。改变你的代码的一种更好的方式如下:

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 
8

转到管理界面的Site模型,并改变值有。或者在Django提示符下在网站上进行查询,然后修改并保存模型。

+0

嗨Ignacio,请参阅http://stackoverflow.com/questions/2107456/how-do-i-change-example-com-in-my-code/2107649#2107649 – zjm1126 2010-01-21 07:58:11

4

将一个文件调用initial_data.json在你的项目目录,内容如下: [{ "pk": 1, "model": "sites.site", "fields": { "name": "localhost:8080", "domain":"localhost:8080" } } ] 然后使用Python manage.py执行syncdb等瞧改变的设置。

相关问题