Django用法(一)

Django的用法:
 
在setting.py中采用如下的方式来配置数据库,因为我是本地调用,所以没有设置password和host。
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'book',                      # Or path to database file if using sqlite3.
        'USER': 'root',                      # Not used with sqlite3.
        'PASSWORD': '',                  # Not used with sqlite3.
        'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '3306',                      # Set to empty string for default. Not used with sqlite3.
    }
}

设置完成后,在mySQL中新建一个名叫book的scheme。之后就可以在models.py中书写新的模型类,检查无误后(有的书上把模型的写法中加入maxlength,正确的写发是max_length)在shell下执行

#显示CREATE TABLE语句
python manage.py sqlall appname
#可以采用上面生成的SQL语句来新建TABLE,也可以用下面的方式
python manage.py syncdb

#此时会出现:
You just installed Django's auth system, which means you don't have any superusers defined.
Would you like to create one now? (yes/no): yes
Username (Leave blank to use 'wangjz'): wtv888    
E-mail address: wjz08.08@gmail.com
Password:
Password (again):

因为在INSTALLED_APPS中使用了django.contrib.auth,所以syncdb命令会要求提供一个管理员帐号和密码,用来登录Django的管理工具。

我们可以在终端下,进入Python环境,进行如下的调试

WangmatoMacBook-Pro:tsitepdf wangjz$ python manage.py shell
>>> from test1.models import Publisher
>>> p1=Publisher(name="WangJZ",address="It's a joke") >>> p1.save()

这里的第一行很重要,如果直接用python命令进入python环境,会出现DJANGO_SETTINGS_MODULE is undefined的错误

(二)站点管理

在urls.py中添加admin

from django.conf.urls.defaults import patterns, include, url
from django.contrib import admin#**此处加入admin模块!

urlpatterns = patterns('',
    # Uncomment the admin/doc line below to enable admin documentation:
    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
     url(r'^admin/', include(admin.site.urls)),#**此处去掉注释!!
    (r'^test1/', include('tsitepdf.test1.urls')),
)


进入http://127.0.0.1:8000/admin/管理界面。想将英文显示中文化将settings.py中 LANGUAGE_CODE 由 'en-us' 改为 'zh-cn。此时登陆管理界面,会提示”你无权修改任何内容“。
在urls.py中,注视掉admin.autodiscover()即可


posted @ 2012-09-02 22:20  蟒蛇  阅读(227)  评论(0编辑  收藏  举报