简介:今天,首席CTO Note将与您分享Django链接MySQL数据库的相关内容。如果您可以解决您现在面临的问题,请不要忘记注意此网站。让我们现在开始!
等待。
如果您必须体验3.0,建议使用2.6。
2.6不仅与先前版本兼容,而且还与3.0的特性兼容,可以用作过度转换。
即使您使用旧语法(低于2.5)开发,也很容易将代码转换为3.0.Python具有此工具,并将现有代码直接转换为3.0。
步骤1:
在您的django项目目录中修改settings.py文件,如下所示:
其中,“ db_name'对应于'name'
命令行提示符创建的数据库名称:注意:在Django使用数据库之前,您必须创建数据库,否则将报告错误。
还有与“密码”相对应的“ passwd”
这是您在MySQL中创建的用户名和密码。如果您有多个,只需随便填写一个。“ host”和“ port”默认情况下不能填写。
出色:使用用户名和密码登录到mySQL方法:
首先,您需要输入MySQL/bin目录,也可以在.bash_profile中设置环境变量:
路径=/usr/local/bin:/usr/bin:/bin:/sbin:/sbin:/usr/sbin:/usr/usr/local/sbin:/usr/local/mysql/5.6.22/bin/
在提示中输入MySQL -U用户名-P,然后在返回后输入PassWD。
第2步:
然后使用Python Manage.py SynCDB在Manage.py路径中尝试。结果将表明您找不到MySQLDB模块。为什么,因为python manage.py syncdb命令正常工作:
1.查找可能需要在项目目录中的stentaim_apps Metal of Attectings.py中续订的应用程序。
2.在每个应用程序目录中找到Models.py(关系定义文件),并更新数据库中的更改。
说了很多话,模块mysqldb在上一个错误中意味着什么?
首先给图片,然后解释:
因为Python用于定义模型中的关系。当然,必须在数据库中使用它来形成SQL语句,因此必须有一些功能模块。
来将Python语句转换为SQL语句。如果您使用SQLITE,因为SQLITE和转换模块已由Python构建,直接使用直接使用不会是错误的
错误。但是“ MySQL语句转换模块”需要您手动加载,这些模块放在MySQL-Python中。
我用pip安装了它:
安装后,请使用Python Manage.py SynCDB为正常。
我使用的系统是OS X,以下是MySQL默认安装路径
/USR/local/cellar/mysql/5.6.22/
如果您想知道数据库文件的放置位置,则可以在MySQL_Config文件中检查LDATA变量。该变量的值是默认数据库文件夹存储路径。在我的系统中,mysql_config的完整路径是:
/USR/local/cellar/mysql/5.6.22/bin/mysql_config
创建mysite目录
django-admin.py startproject mysite的角色是:这将在当前目录中创建一个mySite目录
前提是从命令行到CD到要存储代码的目录,然后生成各种种子目录。
要注意的第一件事是文件目录
大致功能中的文件:
书籍文件夹存储在新数据库的各种信息中
书籍/模板安装在此目录中的网页布局中。当然,此页面的布局由show.html提供
books/views.py定义函数,并介绍show.html,文件内容如下:
来自django.shortcuts导入渲染,render_to_response
来自django.template导入加载程序
从书籍导入模型
#在这里创建您的视图。
def show(请求):
#publisher_list = [{'name':“ gongye”,'city':'bepijing'}]
publisher_list = model.publisher.objects.all()
返回render_to_response('show.html',{'publisher_list':publisher_list})
12345678910111213
books/models.py文件存储您创建的数据库,代码如下:
#coding = UTF-8
来自__future__导入unicode_litrals
来自django.db导入模型
#在这里创建您的模型。
类出版商(Models.Model):
name = models.charfield(max_length = 30)
地址= model.Charfield(max_length = 50)
city = models.charfield(max_length = 60)
state_provring = model.charfield(max_length = 30)
country = models.charfield(max_length = 50)
网站= models.urlfield()
#__unicode__此功能用于返回某个值,可以用于查询和显示接口显示
def __unicode __(self):
返回self.name
班级作者(Models.Model):
first_name = models.charfield(max_length = 30)
last_name = models.charfield(max_length = 40)
email = models.emailfield(空白= true,verbose_name ='电子邮件')
def __unicode __(self):
返回u'%s%s'%(self.first_name,self.last_name)
课程(Models.Model):
title = models.charfield(max_length = 100)
作者= model.manytomanyfield(作者)
publisher = models.foreignkey(发布者)
publication_date = model.datefield(空白= true,null = true)
def __unicode __(self):
返回self.title
123456789111112131415171819202222222727282930313233
书本下的其他文件是在创建过程中自己生成的。
网站/模板文件存储在各种显示静态Web布局中。只要您访问测试,就有如此多的HTML文件,请在端口编号后面添加HTML文件名。例如,我想访问模板/base.htmlfile,输入URL:localhost:8000/base。
网站/settings.py文件是django的设置文档。installed_apps添加了多个应用程序。例如,我在这里添加了书籍应用程序,代码如下:
instasted_apps = [[[
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'图书',
数据库= {
'默认': {
'引擎':'django.db.backends.mysql',#database Engine
“名称”:“测试”,#database名称
“用户”:'root',#user名称
'密码':'root',#
'主机':'',#database主机,默认为localhost
'端口':'',#database端口,mysql默认为3306
'选项': {
“自动参与者”:是的,
},,
}
}
方法/步骤
修改设置中的数据库
数据库= {
'默认': {
'引擎':'django.db.backends.mysql',
“名称”:'书籍',#your数据库名称
“用户”:“ root”,#your数据库用户名
'密码':'',#your数据库密码
'主机':'',#your数据库主机,停留在localhost的简短默认值中
'端口':'3306',#your数据库端口
}
}
instasted_apps =((
“书籍”,#您的数据库名称
治愈
在MySQL中创建书籍数据库
检查是否有语法错误
使用python manage.py sqlall书籍显示mysql语法
在Python Manage.py同步同步模型中使用数据库
成功的创造!
结论:以上是首席CTO注释为每个人编译的Django链接MySQL数据库的相关内容摘要。希望它对您有所帮助!如果您解决了问题,请与更多关心此问题的朋友分享?