用django来编写游戏服务器后台管理的web站点还是比较的合适。本文收集整理了django网站和mysql相关的操作,以资查阅。
前提
安装django、MySQLdb、mysql。可以通过pip来安装django。MySQLdb库则需要去到官网找合适的版本来安装。
pip install django==1.10
配置数据库连接
找到自己的django项目目录(注意在django中有项目和app两种概念)中的settings.py文件。将配置内容修改成需要使用的db的配置。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'django_db',
'HOST' : '127.0.0.1',
'USER' : 'web',
'PASSWORD' : '123456',
'PORT' : '3306',
}
}
官方文档中对DATABASES的使用可以查阅这里
为站点创建管理角色
python manage.py createsuperuser
python manage.py changepassword username
models
models在django中很重要,使用它能很方便的对数据库做增删改查的操作。
定义
找到自己新建的app目录中,找到一个叫做models.py的文件,可以在这里指定自的Model。其实这个可以理解成一个table
class user(models.Model):
account = models.CharField(max_length=64)
passwd = models.CharField(max_length=64)
authority = models.CharField(max_length=64)
authority.default = "newbie"
registTime = models.DateTimeField()
关于表里面的字段说明可以查阅这里
加入到站点管理
在app目录,找到admin.py文件,将模块引入到站点管理中
from django.contrib import admin
from . import models
admin.site.register(models.user)
这样就能在站点管理器里面增删改查models里面的数据。管理站点就是django的/admin/这个url之下的站点。
效果图可以查看这里搜索(Explore the free admin functionality)
将新建的models同步数据库
python manage.py makemigrations
python manage.py migrate
步骤里面第一步将会在查询当前MySQL和本地的models的差异,生成合并的代码。
第二步是将合并代码导入数据库。
基本操作
增数据
from blog.models import Blog
b = Blog(name='Beatles Blog', tagline='All the latest Beatles news.')
b.save()
查数据
models.proverb.objects.all()
通过条件查询数据
level1_menus=models.main_menu.objects.filter(parent__exact="null")
Place.objects.filter(name="Bob's Cafe")
q2 = q1.exclude(pub_date__gte=datetime.date.today())
one_entry = Entry.objects.get(pk=1)
Entry.objects.filter(pub_date__lte='2006-01-01')
SELECT * FROM blog_entry WHERE pub_date <= '2006-01-01';
查询条件可以查阅这里