MySQL与Django互连,无法从django与MySQL通信,但可以直接用python进行通信

我正在使用Apache、django1.6和MySQL 5.5.8在Windows上本地建立一个django网站。我已经创建了一个测试数据库,并在MyPHPAdmin接口中填充了几个示例记录。它有一个专门针对django的用户,具有完全权限(仅针对该数据库)。在

在python会话中,我可以使用这个函数与数据库交互def TestConnection():

import MySQLdb

db=MySQLdb.connect(host="localhost", user="django", passwd="nu_django", db="nutana_django")

cursor=db.cursor()

cursor.execute("select * from test")

for x in range(0,cursor.rowcount):

row=cursor.fetchone()

print row[0], ' --> ', row[1]

而且它输出数据库的记录,所以我觉得MySQL、MySQLdb和python可以正常工作。在

接下来,在django中,我使用“python”创建了一个名为Courses的应用程序管理.pystartapp课程”,并编辑了我的设置.py文件以在已安装的应用程序中包含课程,并按如下方式定义数据库连接:

^{pr2}$

最后一步是Apache。我已经将WSGI模块添加到apache中,并在文件末尾附加了以下内容:LoadModule wsgi_module modules/mod_wsgi.so

WSGIScriptAlias /Nutana F:/Web_Django/Nutana/Nutana/wsgi.py

WSGIPythonPath F:/Web_Django/Nutana

Order deny,allow

Allow from all

上面的路径都是正确的,但我不认为这些都是必要的。在

在我编辑的f:\web_django\Nutana\Courses中模型.py至以下地址:from django.db import models

# Create your models here.

class Course(models.Model):

Name = models.CharField(max_length=200)

start_date = models.DateTimeField('Start Date')

Quota = models.IntegerField()

class Course_Venue(models.Model):

Course = models.ForeignKey(Course)

Name = models.CharField(max_length=200)

Max_Size = models.IntegerField()

好吧。。。当我运行“python”时管理.py“f:\web_django\Nutana”中的命令提示符,其中管理.py生活,我得到一个错误:django.db.utils.OperationalError: (2013, "Lost connection to MySQL server at 'waiting for initial communication packet', system error: 0")

配置太多了,我不知道哪里出了问题!我不认为Apache是这里的问题,但我把它包括进来是为了更彻底。如果我调用一个不存在的web页面,404错误包括对wsgi的引用,那么也许这一切都好吗?在localhost

16/12/2013 10:14:34 AM

Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o mod_wsgi/3.3 Python/2.7.6 PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值