本文介绍了Django与MSSQL提供错误:'DatabaseWrapper'对象没有属性'数据库'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是python和djanog的新手。



我安装django使用。

 code> Pip安装django 

比我安装了Mssql连接器。

  pip install django-mssql 

比我使用此命令运行syncdb。

  python manage.py syncdb 
/ pre>

它显示所有表都创建,但在sql server管理工作室中没有看到任何表。



之后,我试图使用http:// 127.0.0.1:8000/admin
打开Admin panal它给出错误。



错误

 'DatabaseWrapper'对象没有属性'数据库'
以下是错误:
请求方法:GET
请求URL:http:// 127.0.0.1:8000/admin
Django版本:1.6.1
异常类型:AttributeError
异常值:'DatabaseWrapper'对象没有属性'数据库'
Exc eption位置:C:\Python27\lib\site-packages\django\db\utils.py在__exit__,第86行
Python可执行文件:C:\Python27\python.exe
Python版本:2.7.6

SETTING.PY

  DATABASES = {
'default':{
'NAME':'dbexp',
'ENGINE':'sqlserver_ado' ,
'HOST':'172.16.26.51\instance',
'USER':'****',
'PASSWORD':'******'
}
}

堆栈追踪

 环境:
请求方法:GET
请求URL:http://127.0.0.1:8000/admin/

Django版本:1.6.1
Python版本:2.7.6
已安装的应用程序:
('django.contrib.admin',
'django.contrib.auth'
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles' )
安装的中间件:
('django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf。 CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware')


追溯:
文件C:\Python27\lib\site-packages\django\core\handlers\base.py在get_response
114. response = wrapped_callback(request,* callback_args,** callback_kwargs)
文件C:\Python27\lib\site-packages\django\contrib\admin\sites。 pyin wrapper
215. return self.admin_view(view,cacheable)(* args,** kwargs)
文件C:\Python27\lib\site-packages\django\\ \\utils\decorators.py在_wrapped_view
99。 response = view_func(request,* args,** kwargs)
在_wrapped_view_func中的文件C:\Python27\lib\site- packages\django\views\decorators\cache.py b $ b 52. response = view_func(request,* args,** kwargs)
文件C:\Python27\lib\site- packages\django\contrib\admin\sites。 pyin inner
192.如果不是self.has_permission(请求):
文件C:\Python27\lib\site- packages\django\contrib\admin\sites .pyin has_permission
143. return request.user.is_active和request.user.is_staff
文件C:\Python27\lib\site-packages\django\utils\内部
中的functional.py$ b 213. self._setup()
在_setup中的文件C:\Python27\lib\site-packages\django\utils\functional.py
298. self._wrapped = self._setupfunc()
文件C:\Python27\lib\site-packages \\django\contrib\auth\middleware.py在<拉姆达>
18. request.user = SimpleLazyObject(lambda:get_user(request))
文件C:\Python27\lib\site- packages\django\contrib\auth\middleware .pyin get_user
10. request._cached_user = auth.get_user(request)
文件C:\Python27\lib\site- packages\django\contrib\auth\\ $ _ $ p $$$$$$$$$$$$$ _back_getitem__
47. return self._session [key]
文件C:\Python27\lib\site-packages\django\contrib\ session \backends\base.py在_get_session
173. self._session_cache = self.load()
文件C:\Python27\lib\site-packages\django\\加载
中的\\contrib\sessions\backends\db.pyexpire_date__g t = timezone.now()
文件C:\Python27\lib\site-packages\django\db\models\manager.py在get
151. return self.get_queryset()。get(* args,** kwargs)
文件C:\Python27\lib\site- packages\django\db\models\query.py get
301. num = len(clone)
在__len__ $中的文件C:\Python27\lib\site-packages\django\db\models\query.py b $ b 77. self._fetch_all()
在_fetch_all
中的文件C:\Python27\lib\site-packages\django\db\models\query.py 854. self._result_cache = list(self.iterator())
在迭代器中的文件C:\Python27\lib\site-packages\django\db\models\query.py
220.对于compile.results_iter()中的行:
文件C:\Python27\lib\site-packages\django\db\models\sql\compiler。 pyin results_iter
710。对于self.execute_sql(MULTI)中的行:
在execute_sql $中的文件C:\Python27\lib\site- packages\django\db\models\sql\compiler.py b $ b 781. cursor.execute(sql,params)
文件C:\Python27\lib\site-packages\django\db\backends\util.py在执行
69. return super(CursorDebugWrapper,self).execute(sql,params)
文件C:\Python27\lib\site- packages\django\db\backends\util .py执行
53. return self.cursor.execute(sql,params)
文件C:\Python27\lib\site-packages\django\db\utils .py__exit__
86. db_exc_type = getattr(self.wrapper.Database,dj_exc_type .__ name__)

异常类型:/ admin /
中的AttributeError异常值:'DatabaseWrapper '对象没有属性'数据库'


解决方案

我安装了django和django-mssql与pip。 django是1.6版,django-mssql是1.4版本。



从文档中:

从源头安装django-mssql的问题。从bitbucket下载源码。
或使用mercurial克隆它。
然后运行以下命令来安装

> python setup.py install 

现在查看django-mssql的版本

 
> python
>>> import sqlserver_ado
>> > sqlserver_ado .__ version__
u'1.5a'


I am newbie to python and djanog.

I install django using.

Pip install django

Than I installed Mssql connector.

pip install django-mssql

than I run syncdb using this command.

python manage.py syncdb

It shows all tables are created but I didn't see any table in sql server management studio.

After that I tried to open Admin panal using http:// 127.0.0.1:8000/adminit gives error.

ERROR

'DatabaseWrapper' object has no attribute 'Database'
Following is error:    
Request Method: GET    
Request URL:    http:// 127.0.0.1:8000/admin    
Django Version: 1.6.1    
Exception Type: AttributeError    
Exception Value: 'DatabaseWrapper' object has no attribute 'Database'     
Exception Location: C:\Python27\lib\site-packages\django\db\utils.py in __exit__, line 86
Python Executable:  C:\Python27\python.exe
Python Version: 2.7.6

SETTING.PY

DATABASES = {
 'default': {
    'NAME': 'dbexp',
    'ENGINE': 'sqlserver_ado',
    'HOST': '172.16.26.51\instance',
    'USER': '****',
    'PASSWORD': '******',
 }
}

STACK TRACE

Environment:
Request Method: GET
Request URL: http: //127.0.0.1:8000/admin/

Django Version: 1.6.1
Python Version: 2.7.6
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware')


Traceback:
File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in get_response
  114.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Python27\lib\site-packages\django\contrib\admin\sites.py" in wrapper
  215.                 return self.admin_view(view, cacheable)(*args, **kwargs)
File "C:\Python27\lib\site-packages\django\utils\decorators.py" in _wrapped_view
  99.                     response = view_func(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\django\views\decorators\cache.py" in _wrapped_view_func
  52.         response = view_func(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\django\contrib\admin\sites.py" in inner
  192.             if not self.has_permission(request):
File "C:\Python27\lib\site-packages\django\contrib\admin\sites.py" in has_permission
  143.         return request.user.is_active and request.user.is_staff
File "C:\Python27\lib\site-packages\django\utils\functional.py" in inner
  213.             self._setup()
File "C:\Python27\lib\site-packages\django\utils\functional.py" in _setup
  298.         self._wrapped = self._setupfunc()
File "C:\Python27\lib\site-packages\django\contrib\auth\middleware.py" in <lambda>
  18.         request.user = SimpleLazyObject(lambda: get_user(request))
File "C:\Python27\lib\site-packages\django\contrib\auth\middleware.py" in get_user
  10.         request._cached_user = auth.get_user(request)
File "C:\Python27\lib\site-packages\django\contrib\auth\__init__.py" in get_user
  140.         user_id = request.session[SESSION_KEY]
File "C:\Python27\lib\site-packages\django\contrib\sessions\backends\base.py" in __getitem__
  47.         return self._session[key]
File "C:\Python27\lib\site-packages\django\contrib\sessions\backends\base.py" in _get_session
  173.                 self._session_cache = self.load()
File "C:\Python27\lib\site-packages\django\contrib\sessions\backends\db.py" in load
  20.                 expire_date__gt=timezone.now()
File "C:\Python27\lib\site-packages\django\db\models\manager.py" in get
  151.         return self.get_queryset().get(*args, **kwargs)
File "C:\Python27\lib\site-packages\django\db\models\query.py" in get
  301.         num = len(clone)
File "C:\Python27\lib\site-packages\django\db\models\query.py" in __len__
  77.         self._fetch_all()
File "C:\Python27\lib\site-packages\django\db\models\query.py" in _fetch_all
  854.             self._result_cache = list(self.iterator())
File "C:\Python27\lib\site-packages\django\db\models\query.py" in iterator
  220.         for row in compiler.results_iter():
File "C:\Python27\lib\site-packages\django\db\models\sql\compiler.py" in results_iter
  710.         for rows in self.execute_sql(MULTI):
File "C:\Python27\lib\site-packages\django\db\models\sql\compiler.py" in execute_sql
  781.         cursor.execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\backends\util.py" in execute
  69.             return super(CursorDebugWrapper, self).execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\backends\util.py" in execute
  53.                 return self.cursor.execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\utils.py" in __exit__
  86.             db_exc_type = getattr(self.wrapper.Database, dj_exc_type.__name__)

Exception Type: AttributeError at /admin/
Exception Value: 'DatabaseWrapper' object has no attribute 'Database'
解决方案

For me I installed both django and django-mssql with pip. django was version 1.6 and django-mssql was version 1.4.

From the docs:

I solved the problem with installing django-mssql from source. Download the source from bitbucket.https://bitbucket.org/Manfre/django-mssql/get/default.zip or clone it with mercurial.Then run the below command to install

> python setup.py install

Now check the version of django-mssql

> python
>>> import sqlserver_ado
>>> sqlserver_ado.__version__
u'1.5a'

这篇关于Django与MSSQL提供错误:'DatabaseWrapper'对象没有属性'数据库'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-26 21:35