码迷,mamicode.com
首页 > 数据库 > 详细

Django Python MySql 问题集锦

时间:2015-02-05 07:10:44      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:mysql   linux   web   django   

问题 1:

raise ImproperlyConfigured("settings.DATABASES is improperly configured. " django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details. 

解决思路

请先确认DATABASES节点中配置正常,

技术分享


请检查是否有多少 settings.py文件.如果是请逐个检查对应节点.


问题 2:

ImportError: No module named XXX

技术分享

解决思路

请确认这里到底该不该用include


问题3:

Warning:

Incorrect string value: ‘\xE5\xBC\xA0\xE4\xB8\x89‘ for column ‘username‘ at row 1

解决:

很明显,是因为字符乱码的问题.造成的。

所以需要mysql支持中文,那么就去更改mysql的字符集.

方式一: 在创建时就指定默认如:

mysql>  create database test default charset=utf8;

然后再同步生成sql:

>>> python manage.py syncdb


方式二:

mysql > ALTER DATABASE bugzero_db CHARACTER SET utf-8;

这种方式只有在数据库中没有table的情况下才work


方式三:


  1. mysql> SET character_set_client = utf8 ;  

  2. mysql> SET character_set_connection = utf8 ;   

  3. mysql> SET character_set_database = utf8 ;   

  4. mysql> SET character_set_results = utf8 ;    

  5. mysql> SET character_set_server = utf8 ;   


  6. mysql> SET collation_connection = utf8 ;  

  7. mysql> SET collation_database = utf8 ;   

  8. mysql> SET collation_server = utf8 ;

但是这种方法在发送查询或进行与mysql交互时最好还是要加:

SET NAMES ‘utf8‘;

相当于:

  1. SET character_set_client = utf8;  

  2. SET character_set_results = utf8;   

  3. SET character_set_connection = utf8;

不然还是不正常工作.





Forbidden (403)

CSRF verification failed. Request aborted.
Help

Reason given for failure:

    CSRF token missing or incorrect.
    

In general, this can occur when there is a genuine Cross Site Request Forgery, or when Django‘s CSRF mechanism has not been used correctly. For POST forms, you need to ensure:

    Your browser is accepting cookies.
    The view function uses RequestContext for the template, instead of Context.
    In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL.
    If you are not using CsrfViewMiddleware, then you must use csrf_protect on any views that use the csrf_token template tag, as well as those that accept the POST data.

You‘re seeing the help section of this page because you have DEBUG = True in your Django settings file. Change that to False, and only the initial error message will be displayed.

You can customize this page using the CSRF_FAILURE_VIEW setting.

解决方法:开发过程中可暂时注释settings.py中的

‘django.middleware.csrf.CsrfViewMiddleware‘,



由于刚刚接触python , django, mysql也是头一次接触所以可能遇到的都是小白问题,为了自己备注,说不定也可以帮助到各位.


连载 ing..欢迎各位补充.

本文出自 “狼之魂” 博客,请务必保留此出处http://itwolf.blog.51cto.com/3286625/1611699

Django Python MySql 问题集锦

标签:mysql   linux   web   django   

原文地址:http://itwolf.blog.51cto.com/3286625/1611699

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!