django文摘

admin应用  css 图片加载不正确的解决方法

查看 python 系统目录  命令行依次运行

$python

>import os

>os.sys.path

settings.py   修改 ADMIN-MEDIA_PREFIX  为 ADMIN-MEDIA_PREFIX = '/admin-media/'

nginx  对应location配置为

location ^~ /admin-media/

{

     alias /usr/local/lib/python2.7/dist-packages/django/contrib/admin/media/ ;

}

admin分页:

ModelAdmin有个属性 list_per_page


安装使用south

  安装:

    easy_install South 或easy_install -U South
配置:
编辑settings.py'south' 加入 INSTALLED_APPS.
测试:
./manage.py shell

import south
初始化:
./manage.py syncdb 生成将south table导入到数据库中。

使用South:
假设已经有个叫backdata的app,因为不是south创建的,首先要
./manage.py migrate backdata --fake 将表迁移到数据库中

或者如果没有backdata的app,这时可以用south创建一个:
./manage.py startapp backdata

若没有进行过任何数据迁移,先初始化一个migration:
./manage.py schemamigration backdata --initial
迁移
./manage.py migrate backdata
 
更改model后
./manage.py schemamigration backdata --auto 会自动检测到更改,生成migration文件.
然后:./manage.py migrate backdata 执行
如果model的字段未指定null=True的话会提示要求输入一个default值或提示你在model中指定default值。

如果要在已经存在的项目里面使用south,而且数据表已经创建的情况下,可以用转换:
./manage.py convert_to_south myapp 转换为一个用south管理的app

django使用mysql数据库:
首先确认是否有安装了MySQLdb:
import MySQLdb
如果没有,easy_install MySQLdb
编辑settings.py:

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'BROKEE', # Or path to database file if using sqlite3.
'USER': 'stephen', # Not used with sqlite3.
'PASSWORD': 'hacker', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
}
}

mysql中创建用户stephen,密码为hacker,权限为所有,限制为localhost登录:
mysql>GRANT ALL PRIVILEGES ON *.* TO stephen@"localhost" identified by 'hacker';
最后 ./manage syncdb 测试是否能够同步。

如果内存1到2G,拷贝my-huge.cnf
$sudo cp /usr/share/mysql/my-huge.cnf /etc/my.cnf
编辑my.cnf 在[client]加上:

[mysqld]下加上:
character_set_server = utf8 (mysql5.5)
default-character-set = utf8 (mysql5.0)
这样可以使mysql默认为utf8编码。

posted @ 2011-09-14 20:42  babykick  阅读(304)  评论(0编辑  收藏  举报