-----------------
大家可以直接去看github ,那个有简单的自动回复,查询空教室,查询成绩等等。是一个校园服务平台的一部分
https://github.com/virusdefender/smart-qdu
-------------------
1 纯演示性质的使用方法
#但是少了这个 会出现403错误的 原因是csrf校验失败 @csrf_exempt def weixin(request): global TOKEN if request.method == 'GET': signature = request.GET.get("signature", None) timestamp = request.GET.get("timestamp", None) nonce = request.GET.get("nonce", None) echoStr = request.GET.get("echostr",None) token = TOKEN tmpList = [token,timestamp,nonce] tmpList.sort() tmpstr = "%s%s%s" % tuple(tmpList) tmpstr = hashlib.sha1(tmpstr).hexdigest() if tmpstr == signature: return HttpResponse(echoStr) else: return HttpResponse("ERROR") else: xmlstr = smart_str(request.body) xml = etree.fromstring(xmlstr) ToUserName = xml.find('ToUserName').text FromUserName = xml.find('FromUserName').text CreateTime =xml.find('CreateTime').text MsgType = xml.find('MsgType').text Content = xml.find('Content').text MsgId = xml.find('MsgId').text reply_xml = """ <xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[geeks_at_qdu]]></FromUserName> <CreateTime>12345678</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[%s]]></Content> </xml>"""%(FromUserName, Content + " Hello world, this is test message") return HttpResponse(reply_xml)
2 django和数据库在sae平台上的部分问题
(1)默认的index.wsgi和config.yaml文件
import sae from qdutw import wsgi application = sae.create_wsgi_app(wsgi.application)
libraries: - name: "django" version: "1.5" - name: "lxml" version: "2.3.4"
(2)admim界面样式丢失
在project_name/version/文件夹中建立static/admin文件夹,然后把本机site-packages/django/contrib/admin/---记不清了,反正有三个文件夹,分别是image, js和css,复制到里里面就好了
(3)数据表的大小写文件
导入了sql文件之后,一直提示我自己的那个应用的数据表不存在,后来搜索后才发现,数据表的名字是全小写的,而django提示的确是首字母大写的,我自己的app的名字,这样在mysql管理界面直接将表重命名就好了。
(4)dump数据库
mysqldump -u root -p database_name > dump1.sql 输入密码就好了
然后要把里面的所有的LOCK和UNLOCK语句删除
----------